در این پست از وبسایت پرووید در رابطه با Convention های رابطه های One-to-Many در Entity Framework Core #2 صحبت خواهیم کرد. تکنولوژی Entity Framework Core نسل بعدی Entity Framework است که توسط مایکروسافت معرفی شده است.

در قسمت قبلی از این آموزش در رابطه با convention اول صحبت کردیم.

بررسی دومین convention در پیاده‌سازی relationship ها در Entity Framework Core

خب convention دیگری که وجود دارد در نظر گرفتن یک collection navigation property در principal entity می باشد. این موضوع در تصویر زیر نشان داده شده است.

public class Student
{
    public int StudentId { get; set; }
    public string StudentName { get; set; }
}

public class Grade
{
    public int GradeId { get; set; }
    public string GradeName { get; set; }
    public string Section { get; set; }

    public ICollection<Student> Students { get; set; }
}

در این مثال همانطور که مشاهده می‌کنید Grade شامل یک collection navigation property از نوع ICollection<student> می‌باشد. این قضیه به ما اجازه می دهد که چندین Student را به یک Grade مرتبط کنیم و یک relationship از نوع one-to-many را بین Students و Grades که table های دیتابیس می‌باشند ایجاد می ‌کند. این موضوع دقیقا شبیه به convention قبل عمل می کند.

بسته ی آموزش ویدئویی نکات طلایی Entity Framework برای برنامه های تجاری

از شما دعوت می کنیم که از بسته ی آموزش ویدئویی نکات طلایی Entity Framework برای برنامه های تجاری دیدن کنید.

بررسی سومین convention در پیاده‌سازی relationship ها در Entity Framework Core

یک convention دیگر در Entity Framework Core برای پیاده ‌سازی relationship های one-to-many در نظر گرفتن navigation property ها در هر دو entity می باشد که منجر به یک relationship از نوع one-to-many می شود. در واقع این convention ترکیبی از convention های ۱ و ۲ است. لطفاً کد زیر را مشاهده کنید.

public class Student
{
    public int Id { get; set; }
    public string Name { get; set; }
    
    public Grade Grade { get; set; }
}

public class Grade
{
    public int GradeID { get; set; }
    public string GradeName { get; set; }
    
    public ICollection<Student> Students { get; set; }
}

همانطور که در این کد می بینید Student شامل یک reference navigation property از نوع Grade می باشد و همچنین Grade شامل یک collection navigation property از نوع ICollection<student> می باشد. این موضوع باعث ایجاد شدن یک relationship از نوع one-to-many بین جدول های Students و Grades در دیتابیس می ‌شود. دقیقا شبیه چیزی که convention اول برای ما به وجود آورد.

بسته ی آموزش ویدئویی شروع به کار با Entity Framework Core 2.0

از شما دعوت می کنیم که از بسته ی آموزش ویدئویی شروع به کار با Entity Framework Core 2.0 دیدن کنید.

ضمناً، می توانید برای کسب اطلاعات بیشتر در مورد Collection ها از بسته ی بسته ی آموزش ویدئویی Collection ها در سی شارپ استفاده کنید.

در قسمت بعدی از این آموزش در رابطه با convention چهارم صحبت خواهیم کرد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *