上下文不可用?

时间:2011-12-20 14:54:26

标签: c# workflow-foundation workflow-foundation-4

我正在尝试在wf4中创建自定义活动。我找到了一个教程/示例并且一直在使用它来开始,但是我似乎遇到了问题。

public sealed class SaveRequest : NativeActivity {
    // Define an activity input argument of type string
    [RequiredArgument]
    public InArgument<Request> Request { get; set; }

    // If your activity returns a value, derive from CodeActivity<TResult>
    // and return the value from the Execute method.
    protected override void Execute(NativeActivityContext context) {
        Request Request = this.Request.Get(context);
        Request.Id = Guid.NewGuid();
        Request.Title = "New Test";
        RequestMonkeyRepository Rep = new RequestMonkeyRepository();
        Rep.save(Request);
    }
}

上面的代码总是在分配guid时出现空对象实例错误。我认为它是因为我没有将请求对象传递给工作流程,但我不知道他们是如何在示例中做到的。

我正在运行一个控制台应用程序,我的执行代码在

之下
WorkflowInvoker.Invoke(new RequestMonkeyTest1.TestWorkflow());

1 个答案:

答案 0 :(得分:0)

您是否在工作流中将Request InArgument设置为某个返回Request对象实例的表达式?如果没有尝试添加&#34;新请求()&#34;在表达式中再次运行您的工作流程。