Index: trunk/Wierszowki/Wierszowki.Services/MagazineItemService.cs
===================================================================
--- trunk/Wierszowki/Wierszowki.Services/MagazineItemService.cs (revision 823)
+++ trunk/Wierszowki/Wierszowki.Services/MagazineItemService.cs (revision 842)
@@ -33,4 +33,5 @@
         public void Create(MagazineItem magazineItem, string currentUser)
         {
+
             var errors = DataAnnotationsValidationRunner.GetErrors(magazineItem);
             if (errors.Any())
@@ -38,8 +39,4 @@
                 throw new RulesException(errors);
             }
-            var errors1 = new List<ErrorInfo>();
-            errors1 = ShowError(magazineItem);
-            if (errors1.Count() > 0) throw new RulesException(errors1.AsEnumerable()); 
-
             var user = _userRepository.FindOne(u => u.Login == currentUser);
             var now = DateTime.Now;
@@ -52,18 +49,4 @@
             
         }
-
-        private List<ErrorInfo> ShowError(MagazineItem magazineItem)
-        {
-            var errors1 = new List<ErrorInfo>();
-            if (magazineItem.IssueId <= 0)          
-            {
-                ErrorInfo e1 = new ErrorInfo("Magazine", "Proszę wybrać gazetę!");
-                errors1.Add(e1);
-                ErrorInfo e = new ErrorInfo("IssueId", "Proszę wybrać numer wydania!");
-                errors1.Add(e);            
-            }
-            return errors1;
-        }
-
         public void Update(MagazineItem magazineItem, string currentUser)
         {
@@ -71,9 +54,4 @@
             if (errors.Any())
                 throw new RulesException(errors);
-
-            var errors1 = new List<ErrorInfo>();
-            errors1 = ShowError(magazineItem);
-            if (errors1.Count() > 0) throw new RulesException(errors1.AsEnumerable());
-                         
 
             var user = _userRepository.FindOne(u => u.Login == currentUser);
@@ -91,8 +69,7 @@
             magazineItemToUpdate.UpdatedBy = user.Id;
             magazineItemToUpdate.UpdatedOn = now;
-
             _repository.Update(magazineItemToUpdate);
         }
-        public void Delete(MagazineItem magazineItem)
+        public MagazineItem Delete(MagazineItem magazineItem)
         {
             var magazineItemToDelete = _repository.FindOne(magazineItem.Id);
@@ -101,4 +78,5 @@
                 _repository.Delete(magazineItemToDelete);
             }
+            return magazineItemToDelete;
         }
     }
Index: trunk/Wierszowki/Wierszowki.Services/DataAnnotationsValidationRunner.cs
===================================================================
--- trunk/Wierszowki/Wierszowki.Services/DataAnnotationsValidationRunner.cs (revision 752)
+++ trunk/Wierszowki/Wierszowki.Services/DataAnnotationsValidationRunner.cs (revision 842)
@@ -12,9 +12,33 @@
     {
         public static IEnumerable<ErrorInfo> GetErrors(object instance)
-        {
-            return from prop in TypeDescriptor.GetProperties(instance).Cast<PropertyDescriptor>()
+        {   
+            List<ErrorInfo> errors = new List<ErrorInfo>();
+
+	        IEnumerable<PropertyDescriptor> properties = TypeDescriptor.GetProperties(instance).Cast<PropertyDescriptor>();
+	        foreach (PropertyDescriptor prop in properties) {
+	            IEnumerable<ValidationAttribute> attributes = prop.Attributes.OfType<ValidationAttribute>();
+
+                int empty = 2;
+                object pom = prop.GetValue(instance);
+                if (pom != null)
+                {
+                    object typek = pom.GetType();
+                    if (pom.GetType().Name == "Int32")
+                    {
+                        empty = Convert.ToInt32(pom);
+                    }
+                }                                
+                foreach (ValidationAttribute attribute in attributes) {
+	                if (!attribute.IsValid(prop.GetValue(instance)) || empty == 0) {
+	                    errors.Add(new ErrorInfo(prop.Name, attribute.FormatErrorMessage(string.Empty), instance));
+	                }
+	            }
+	        }
+	        return errors;
+            /* return from prop in TypeDescriptor.GetProperties(instance).Cast<PropertyDescriptor>()
                    from attribute in prop.Attributes.OfType<ValidationAttribute>()
                    where !attribute.IsValid(prop.GetValue(instance))
                    select new ErrorInfo(prop.Name, attribute.FormatErrorMessage(string.Empty), instance);
+            */
         }
     }
