あなたの例を見てみましょう:
関連表
Related_id PK
Related_name
Date
製品表
Product_id PK
Related_id FK
Product_Name
Date
EFでそれを表現する方法
RelatedModelという名前の関連モデルクラス
[Key]
public int Related_id { get; set; }
public string Related_name {get;set}
public Datetime Date{get;set;}
ProductModelという名前の製品モデルクラス
[Key]
public int Product_id { get; set; }
public string Product_name {get;set}
public string Related_id {get;set}
public Datetime Date{get;set;}
[ForeignKey("Related_id ")] //We can also specify here Foreign key
public virtual RelatedModel Related { get; set; }
このようにして、2つのテーブル間の関係を作成できます
多対多の関係の場合、ここで別の例を取り上げたいと思います
モデルクラスEnrollment.csがあるとします
public class Enrollment
{
public int EnrollmentID { get; set; }
public int CourseID { get; set; }
public int StudentID { get; set; }
public decimal? Grade { get; set; }
public virtual Course Course { get; set; }
public virtual Student Student { get; set; }
}
ここで、CourseIDとStudentIdは2つの外部キーです
今、私は別のクラスCourse.csを持っており、そこで多対多の関係を作成します。
public class Course
{
public int CourseID { get; set; }
public string Title { get; set; }
public int Credits { get; set; }
public virtual ICollection<Enrollment> Enrollments { get; set; }
}
これがお役に立てば幸いです!!!