Для каждой сущности, которая имеет отношение один ко многим с другой сущностью, когда я пытаюсь добавить новый элемент, мне кажется, что я должен определить этот список элементов, который относится к этой сущности.
Например, допустим, у меня есть объект ProductType
, который имеет список Products
следующим образом:
[Table]
public class ProductType
{
[Column(IsPrimaryKey = true, IsDbGenerated = true)]
public int Id { get; private set; }
[Column]
public string Name { get; set; }
private EntitySet<Product> _products;
[Association(Storage = "_products", ThisKey = "Id", OtherKey = "ProductTypeId")]
public EntitySet<Product> Products
{
get { return _products; }
set { _products.Assign(value); }
}
}
когда я пытаюсь добавить новый ProductType
вот так:
ProductType newType = new ProductType { Name = "newType" };
_productRepository.Add(newType); //InsertOnSubmit() and SaveChanges()
это дает мне исключение, что Products
равно нулю:
Object reference not set to an instance of an object
та же проблема со всеми сущностями, имеющими отношение один ко многим с другими сущностями. так как я могу разрешить нулевой для EntitySet <>, который представляет отношение один ко многим