如何在施工后自动调用功能?

时间:2014-03-07 17:06:31

标签: c# linq

我有一个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();
   }
}

1 个答案:

答案 0 :(得分:3)

我相信您在初始化DueDate之前尝试创建RigActionType对象,或者GetOriginalDueDateForAction尝试访问RigAction的此类(未初始化)对象。< / p>

首先初始化DueDate所需的所有数据,然后才创建DueDate对象。