ایجاد رابطه foreignkey و primerykey با استفاده از codefirst
پنجشنبه 21 آبان 1394در این مقاله به ایجاد رابطه کلید خارجی(foreignkey) و کلید اصلی(primerykey) با استفاده از Entity frame work codefirst در asp.net mvc می پردازیم. برای این کار دو کلاس با نام های department و employee ایجاد میکنیم
ابتدا یک پروژه Empty از نوع Mvc ایجاد نمایید .
سپس درفایل models کلاسی با نام Department ایجاد کنید . و کد زیر را در ان قرار دهید.
public class Department { public int DepartmentId { get; set; } public string DepartmentName { get; set; } } public class Employee { public int EmployeeId { get; set; } public string EmployeeName { get; set; } public virtual int DepartmentId { get; set; } public virtual Department Departments { get; set; } {
در روش code first ما باید Attribute هایی برای فیلد ها تعریف کنیم برای تعریف کلید اصلی از [key] استفاده میکنیم.
[foreignkey(“name field”)] : برای تعریف کلید خارجی نام فیلد را درون پرانتز مینویسیم
کد زیر کامل شده کد قبل میباشد.
public class Department { [Key] public int DepartmentId { get; set; } [Display(Name = "نام دپارتمان")] [Required] public string DepartmentName { get; set; } } public class Employee { [Key] public int EmployeeId { get; set; } [Display(Name = "نام کارمند")] [Required] public string EmployeeName { get; set; } // Foreign key public virtual int DepartmentId { get; set; } [ForeignKey("DepartmentId")] public virtual Department Departments { get; set; } }
حالا به سراغ کنترلر میرویم و کنترلی با نام Department ایجاد میکنیم تصاویر زیر مراحل کار را نشان میدهد.
بعد از ایجاد کنترلر Department ، کنترلری با نام Employee را مانند قبل ایجاد میکنیم. با این تفاوت که در قسمت model class مدل Employee را انتخاب کنید. به شکل زیر توجه کنید.
در قسمت view روی صفحه create کلیک کنید و برنامه را اجرا کنید .
- ASP.net MVC
- 4k بازدید
- 3 تشکر