我正在使用MVC 4和EF代码第一种方法 . 我有两个简单的对象 . 这些是他们的POCO课程:
public class Activity
{
//Primitive Properties
[HiddenInput]
public int Id { get; set; }
[Required]
public int LengthInMinutes { get; set; }
public string AdditionalInfo { get; set; }
[Required]
public bool Archive { get; set; }
//Navigation Properties
public virtual User User { get; set; }
public virtual ActivitySet ActivitySet { get; set; }
public virtual ICollection<Company> Companies { get; set; }
public virtual ICollection<Description> Descriptions { get; set; }
}
public class Company
{
//Primitive Properties
[HiddenInput]
public int Id { get; set; }
[Required]
public string Title { get; set; }
[Required]
public bool Archive { get; set; }
//Navigation Properties
public virtual ICollection<Activity> Activities { get; set; }
}
因此,活动和公司实体之间存在多对多关系 . 我正在我的存储库类中创建新的Activity,但是当我为Activity分配一个公司时,如下所示:
activity.Companies.Add(company);
我得到NullReference异常 . 我环顾四周但是根据这个链接:
我的方法似乎是正确的 .
为什么不工作?
1 回答
在使用Add()off Companies之前,需要对其进行初始化 .
您还可以在Activity的构造函数中初始化它 .