مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

miladrq

عضویت از 1394/08/29

پیاده سازی Cascade Delete در EF Core 2

  • جمعه 6 مهر 1397
  • 14:43
تشکر میکنم

سلام دوستان خسته نباشید

دوستان چطور میشه Cascade Delete رو  Ef core 2 پیاده سازی کرد؟ پروژه من یک وب سایت با asp.net core 2.1 هست و من روشی که در Entity framework و با استفاده از flunet api بود پیدا سازی کردم و با ارور مواجه شدم و نتونستم ارورش را حل کنم. ارورش هم این بود

Microsoft.EntityFrameworkCore.DbUpdateException
  HResult=0x80131500
  Message=An error occurred while updating the entries. See the inner exception for details.
  Source=Microsoft.EntityFrameworkCore.Relational
  

Inner Exception 1:
SqlException: The DELETE statement conflicted with the REFERENCE constraint "FK_TblNews_TblTopics_TopicID". The conflict occurred in database "KickBox_Gym", table "dbo.TblNews", column 'TopicID'.
The statement has been terminated.

کدی که به کار بردم هم کد زیر بود 

protected override void OnModelCreating(ModelBuilder builder)
        {
            builder.Entity<Tbl_NewsTopic>()
                   .HasMany<Tbl_News>(o => o.Tbl_News)
                   .WithOne(p => p.Tbl_NewsTopic)
                   .HasForeignKey(m => m.TopicID)
                   .OnDelete(DeleteBehavior.Cascade);

            builder.Entity<Tbl_News>()
                  .HasMany<Tbl_Comment>(o => o.TblComments)
                  .WithOne(p => p.Tbl_News)
                  .HasForeignKey(m => m.NewsID)
                  .OnDelete(DeleteBehavior.Cascade);

            base.OnModelCreating(builder);
        }

پاسخ های این پرسش

تعداد پاسخ ها : 1 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • جمعه 6 مهر 1397
  • 19:49

این لینک رو مطالعه کنید

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)