У меня в основном есть:
Public Class Job: MyBaseClass
{
public virtual string JobInformation {get;set;}
...
public virtual List<Item> JobItems {get;set;}
}
Я использовал List и инициализировал его (JobItems = new List ();) в конструкторе. Однако я получил исключение (Nhibernate.Collection.Generic.PersistentGenericBag)
Я прочитал этот вопрос и он сказал, что вместо этого я должен использовать IList.
Так что теперь у меня есть
public class Job: MyBaseClass
{
public virtual string JobInformation {get;set;}
...
public virtual IList<Item> JobItems {get;set;}
}
public virtual void AddItem(Item item)
{
//snip validation
this.JobItems.Add(item);
}
Однако он генерирует исключение NullReferenceException, поскольку JobItems еще не инициализирован. Когда NHibernate инициализирует эту коллекцию? Или как я могу решить эту проблему?