我有一个Linq对象需要在构造时自动将另一个对象分配给属性。分配的对象取决于进行调用的对象。
我想做什么:
public RigAction()
{
this.DueDate = new DueDate(this);
}
然而,这引发了这个例外:
Object reference not set to an instance of an object.
什么有用
public RigAction()
{
}
public void getDueDate() {
this.DueDate = new DueDate(this);
}
但是每当我实例化对象时我都必须这样做:
var action = db.RigActions.First();
action.getDueDate();
有解决方法吗?
更新
DueDate类:
public class DueDate
{
private DateTime dueDate;
public RigActionTypeClass.RigActionType a;
public DueDate(RigAction action)
{
this.dueDate = action.RigActionType.FrequencyType.GetOriginalDueDateForAction(action);
}
public DueDate(UniqueRigAction action)
{
}
public override string ToString()
{
return this.dueDate.ToString();
}
}
答案 0 :(得分:3)
我相信您在初始化DueDate
之前尝试创建RigActionType
对象,或者GetOriginalDueDateForAction
尝试访问RigAction
的此类(未初始化)对象。< / p>
首先初始化DueDate
所需的所有数据,然后才创建DueDate
对象。