私はEntity Frameworkを初めて使用しています。私は、LawsonデータベースのCUSTORDERテーブルとCOLINEテーブルのPOCOを生成するために、Code-First-From-Databaseアプローチを使用しました。これらの2つのPOCOは以下のようになります。注:読みやすくするために、ほとんどのフィールドを削除しました。EF 6.1データベースからコードを最初に読み込む - 参加方法
[Table("LAWSON.CUSTORDER")]
public partial class CustOrder
{
[Key]
[Column(Order = 0)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public short COMPANY { get; set; }
[Key]
[Column(Order = 1)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int ORDER_NBR { get; set; }
public bool R_STATUS { get; set; }
[Required]
[StringLength(2)]
public string ORDER_TYPE { get; set; }
public DateTime ORDER_DATE { get; set; }
public DateTime PRICE_DATE { get; set; }
. . .
}
[Table("LAWSON.COLINE")]
public partial class CoLine
{
[Key]
[Column(Order = 0)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public short COMPANY { get; set; }
[Key]
[Column(Order = 1)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int ORDER_NUMBER { get; set; }
[Key]
[Column(Order = 2)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int LINE_NBR { get; set; }
public bool R_STATUS { get; set; }
. . .
}
私はCustOrderを取得するためにDBContextを使用し、私はそれがまたCustOrderに関連付けられているすべてのコリンが含まれるようにしたいと思います。私はCustOrderクラスに以下を追加する必要があると思う。
public virtual IList<CoLine> CoLines { get; set; }
しかし、どのように私はコリン列にORDER_NUMBERに参加するCustOrderでORDER_NBR列を使用して、これら2つのテーブルを結合するためにEFを伝えることができますか?
申し訳ありませんが、私はまだよく分かりません。元の質問を少し編集しました。私がしたのは、CoLineのORDER_NUM coulmnをORDER_NUMBERに変更することでした。ですから、私はORDER_NUMをCustOrderに、ORDER_NUMBERをCoLineの中に入れたいと思っています。 EFがCoLineのORDER_NUMBERを使ってCustOrderのORDER_NUMに参加することを知る方法で、FKに注釈を付けるにはどうすればよいですか? –