a

validation failed for one or more entities. see 'entityvalidationerrors' property for more details

صفحه اصلی / ABLY مقالات و مطالب مجموعه / validation failed for one or more entities. see 'entityvalidationerrors' property for more details
validation failed for one or more entities. see 'entityvalidationerrors' property for more details

validation failed for one or more entities. see 'entityvalidationerrors' property for more details

بسم الله الرحمن الرحیم

همه ی ما با خطای زیر برخورد کرده ایم.

 

 

 

validation-failed-for-one-or-more-entities-see-entityvalidationerrors-property-for-more-details

 

 

 

اگر یک Model داشته باشیم که تعداد فیلد های آن بسیار زیاد باشد، طبیعتا پیدا کردن فیلدی که باعث بروز این خطا شده است کار ساده ای نخواهد بود.

چطور می توان به سرعت اینگونه خطاها را بررسی و رفع کرد؟

 

 

 

بسم الله الرحمن الرحیم

همه ی ما با خطای زیر برخورد کرده ایم.

 

 

 

validation-failed-for-one-or-more-entities-see-entityvalidationerrors-property-for-more-details

 

 

 

اگر یک Model داشته باشیم که تعداد فیلد های آن بسیار زیاد باشد، طبیعتا پیدا کردن فیلدی که باعث بروز این خطا شده است کار ساده ای نخواهد بود.

چطور می توان به سرعت اینگونه خطاها را بررسی و رفع کرد؟

 

 

 

آموزش Entity Framework

رفع خطای validation failed for one or more entities

اولین کاری که باید انجام شود پیدا کردن فیلد خطا و متن خطا می باشد طبیعتا پس از مشخص شدن خطا رفع آن کار چندان پیچیده ای نخواهد بود.

برای حل این مشکل کدهای خود را درون بدنه ی Try Catch قرار دهید و سپس Catch خود را به صورت زیر کد نویسی کنید.

 


catch (System.Data.Entity.Validation.DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                        eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                            ve.PropertyName, ve.ErrorMessage);
                    }
                }
                throw;
            }

 

 

 

لازم به ذکر است در این مثال متن خطا را در Console نمایش داده ایم اگر برنامه ی شما وب و یا ویندوزی باشد کافی است که آن را به صورت های دیگر مثلا Response.Write و یا MessageBox.show نمایش دهید.

 

 

نظرات یا سوالات خودرا با ما درمیان بگذارید

0912 097 5516 :شماره تماس
0713 625 1757 :شماره تماس