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

آموزش پیکربندی رابطه چند به چند

دوره های مرتبط با این مقاله

آموزش پیکربندی رابطه چند به چند

ما قصد داریم یک رابطه چند به چند بین کلا س های Student و Course پیکربندی کنیم.


پیکربندی رابطه چند به چند با استفاده از DataAnnotation

کلاس Student یک مشخصه collection navigation برای کلاس Course دارد و کلاس Course هم باید یک مشخصه collection navigation برای کلاس student داشته باشد که یک رابطه چند به چند بین کلاس student و کلاس course ایجاد می کند


   
public class Student
‎    {‎
        ‎        public Student() { }‎
        ‎ ‎
        ‎        public int StudentId { get; set; }‎
        ‎        [Required]‎
        ‎        public string StudentName { get; set; }‎
        ‎        public int StdandardId { get; set; }‎
        ‎        public virtual ICollection Courses { get; set; }‎
        ‎    }‎
        ‎    public class Course
‎    {‎
        ‎        public Course()‎
        ‎        {‎
        ‎            this.Students = new HashSet();‎
        ‎        }‎
        ‎        public int CourseId { get; set; }‎
        ‎        public string CourseName { get; set; }‎
        ‎ ‎
        ‎        public virtual ICollection Students { get; set; }‎
        ‎    }

قطعه کد نشان داده شده در بالا ، پایگاه داده پایین را ایجاد می کند که Code-First سومین جدول اتحاد شده را ایجاد می کند . جدول CourseStudent که شامل کلید اولیه هر دوجدول است برای مثال شامل هر دو فیلد StudentId و CourseId می باشد.


آموزش Entity Framework

پیکربندی رابطه چند به چند با استفاده از Fluent API

به کمک Fluent API می توانید یک رابطه چند به چند بین کلاس های Student و Course به شرح زیر پیکربندی کنید.


  
protected override void OnModelCreating(DbModelBuilder modelBuilder)‎
        ‎    {‎
        ‎       modelBuilder.Entity().HasMany(s => s.Courses).WithMany(c => ‎c.Students).Map(c ‎‎=>‎
        ‎        {‎
        ‎            c.MapLeftKey("Student_id");‎
        ‎            c.MapRightKey("Course_id");‎
        ‎            c.ToTable("StudentAndCourse");‎
        ‎        });‎
        ‎        base.OnModelCreating(modelBuilder);‎
        ‎    }

همان طور که در قطعه کد بالا می بینید کلید سمت چپ (ستون کلید در کلاس Student) با فیلد Student_id و کلید سمت راست (ستون کلید از کلاس Course) با فیلد Course_id از جدول StudentAndCourse با هم به کار می روند.
این یک جدول اتحاد جدید به نام StudentAndCourse با دو کلید اولیه که همچنین یک کلید خارجی نیز هست ، به شرح زیر می باشد.


آموزش Entity Framework
  • 4920
  •    1546
  • تاریخ ارسال :   1394/07/27

دانلود PDF دانلود سورس کد دانشجویان گرامی اگر این مطلب برای شما مفید بود لطفا ما را در GooglePlus محبوب کنید
رمز عبور: tahlildadeh.com یا www.tahlildadeh.com
ارسال دیدگاه نظرات کاربران
شماره موبایل دیدگاه
عنوان پست الکترونیک

ارسال
کاربر میهمان1396/05/29

عالی

مطالبتون عالیه ممنون از زحماتتون


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

تمامی حقوق این سایت متعلق به آموزشگاه تحلیل داده می باشد .