2016-11-23 8 views
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; } 

} 
+0

[関連テーブルの追加フィールドで、最初に多数のコードを作成する]の可能な複製(http://stackoverflow.com/questions/7050404/create-code-first-many-to-many-with-additional -fields-associationテーブル) –

答えて

1

public virtual ICollection<InspCharToMaterial> InspCharToMaterials { get; set; }MaterialInspectionCharacteristicpublic virtual ICollection<InspectionCharacteristic> InspCharLinks { get; set; }public virtual ICollection<Material> Materials { get; set; }を交換してください。

関連する問題