Asp.net Windows workflow 4.0停止工作

Asp.net Windows workflow 4.0停止工作,asp.net,workflow-foundation-4,workflowservice,Asp.net,Workflow Foundation 4,Workflowservice,我在asp.net 4.0中创建了一个长期运行的工作流 此WF只启动一次,从不停止。我已从web应用程序启动此工作流。 在Global.asax中 protected void Application_Start(object sender, System.EventArgs e) { var LicClient = new WFService.LicWFClient(); LicClient.StartWorkFlow(); } 我为数据库事务使用了一些代码活动 处理补货-检查由于

我在asp.net 4.0中创建了一个长期运行的工作流

此WF只启动一次,从不停止。我已从web应用程序启动此工作流。 在Global.asax中

protected void Application_Start(object sender, System.EventArgs e)
{
  var LicClient = new WFService.LicWFClient();
  LicClient.StartWorkFlow();
}
我为数据库事务使用了一些代码活动

处理补货-检查由于某种原因被搁置的请求,然后处理以检查其是否完全满足这些需求&如果它有效,则再次传递到下一个,其他明智的搁置。发送通知邮件

LicenseRequest-检查有效请求

睡眠30秒-线程睡眠30秒

按请求处理-按请求处理并发送通知邮件

睡眠1分钟-线程睡眠1分钟

它对我来说很好,但在服务器上给我带来了一些问题

  • 工作流程在一段时间后停止
    • 这不是每天都会发生的。所以我们手动启动它
  • 错误:

    上下文当前未跟踪实体。参数名称:位于System.Data.Services.Client.DataServiceContext.UpdateObject(对象实体)的实体位于LicenseWF.SaveLicenseData.Execute(CodeActivityContext上下文)

    • 这种情况发生在有效的请求中,但不是全部,在2天内得到一个
  • 如果有任何想法,请建议我。
    提前感谢…

    您的SaveLicenseData活动似乎有问题。更具体地说,当您调用
    Update
    时,数据服务无法提交。工作流正在停止,因为“异常未处理”属性,但它似乎与工作流本身没有任何直接关系。是的,更新调用时出错,但在抛出错误后更新给定实体意味着它会自动重复更新调用并成功提交。我非常小心地发现了这个异常,所以没有机会因为这个原因停止工作流。