2014-03-31 63 views
0

我正在開發一個使用EF的MVC應用程序,Code First & C#。我想在我的數據庫中創建一個存儲其他對象列表的對象。即我有一個名爲PayCodes的對象,列出了所有的PayCode,另一個列出了CombinedPayCodes。 CombinedPayCodes將包含PayCodes對象中的兩個或更多PayCodes。多選屬性

我可以很容易地創建這種關係,可以選擇一個支付代碼,但不是很多支付代碼。

有人可以提供一些關於實現此目的的最佳方式的指導。

public class PayCode 
{ 
    public virtual int PayCodeId { get; set; } 
    public virtual string Name { get; set; } 
} 

public class CombinedPayCode 
{ 
    public virtual int CombinedPayCodeId { get; set; } 
    public virtual int PayCodeId { get; set; } 
    public virtual PayCode PayCode { get; set; } 
    public virtual string Name { get; set; } 
} 

回答

0

您應該將屬性PayCode更改爲ICollection,並添加一個屬性CombinedPayCode;這將創造一對多的關係。

public class PayCode 
{ 
    public virtual int PayCodeId { get; set; } 
    public virtual string Name { get; set; } 
    public virtual CombinedPayCode CombinedPayCode {get;set;} 
} 

public class CombinedPayCode 
{ 
    public virtual int CombinedPayCodeId { get; set; } 
    public virtual int PayCodeId { get; set; } 
    public virtual ICollection<PayCode> PayCodes { get; set; } 
    public virtual string Name { get; set; } 
} 
+0

嗨,這似乎並不奏效。它編譯好,但在數據庫或UI中都不允許您選擇CombinedPay Code中的多個PayCodeId。 – ccocker