0
InspCharsとマテリアル間のM:M関係を実現するための関連テーブルが必要ですが、追加フィールドが必要です。それで私は別のテーブルInspCharsToMaterialsを作成します。 すべてが機能していますが、efが必要とする独自の自動生成アソシエーションテーブルを作成します。アソシエーションテーブルの自動作成を禁止する方法EF
これに対処するにはどうすればよいですか?このefの可能性をオフにする方法(多対多の場合のみ)
[Table("tbl_Materials")]
public class Material
{
[Key]
public int key { get; set; }
[Required]
[Column(TypeName = "NVARCHAR")]
[StringLength(18)]
public string MaterialID { get; set; }
[Required]
[Column(TypeName = "NVARCHAR")]
[StringLength(128)]
public string MaterialName { get; set; }
[Column(TypeName = "bit")]
public bool Deleted { get; set; }
public virtual ICollection<InspectionCharacteristic> InspCharLinks { get; set; }
}
[Table("tbl_InspectionCharacteristic")]
public class InspectionCharacteristic
{
[Key]
[Required]
public int key { get; set; }
[Required]
[Column(TypeName = "NVARCHAR")]
[StringLength(40)]
public string InspCharID { get; set; }
[Required]
[Column(TypeName = "NVARCHAR")]
[StringLength(40)]
public string InspCharName { get; set; }
[Column(TypeName ="BIT")]
public bool IsCatalogType { get; set; }
/*[Column(TypeName = "NVARCHAR")]
[StringLength(8)]
public string CatalogGroupLink { get; set; }*/
[Column("CatalogGroupID")]
public int? CatalogGroupKeyID { get; set; }
//public virtual CatalogGroup CatalogGroup { get; set; }
public virtual ICollection<Material> Materials { get; set; }
}
そして、私の関連テーブル:
[Table("tbl_InspCharToMaterials")]
public class InspCharToMaterial
{
[Key]
public int key { get; set; }
public virtual Material Material { get; set; }
public virtual InspectionCharacteristic InspectionCharacteristic { get; set; }
public bool Deleted { get; set; }
}
[関連テーブルの追加フィールドで、最初に多数のコードを作成する]の可能な複製(http://stackoverflow.com/questions/7050404/create-code-first-many-to-many-with-additional -fields-associationテーブル) –