【问题标题】:WF 4.0 can't get to resume workflow on the staging/production environmentWF 4.0 无法在暂存/生产环境中恢复工作流程
【发布时间】:2012-06-14 00:43:02
【问题描述】:

我使用 WF4.0 开发了各种注册工作流程。每个工作流程都有不同的书签。我正在将注册 wf 用于 asp.net 应用程序。

我在本地测试了 asp.net 应用程序,它工作正常(启动 WF、持久化到 db 并恢复书签)。当我尝试在登台服务器上对其进行测试时,一切都变得一团糟。我无法再恢复 wfs 并且收到一条错误消息:

System.Runtime.DurableInstancing.InstancePersistenceCommandException 用户代码未处理消息=执行 InstancePersistenceCommand 命名 {urn:schemas-microsoft-com:System.Activities.Persistence/command}LoadWorkflow 被错误中断。源=System.Runtime.DurableInstancing 堆栈跟踪: 在 System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult 结果) 在 System.Runtime.DurableInstancing.InstancePersistenceContext.OuterExecute(InstanceHandle initialInstanceHandle、InstancePersistenceCommand 命令、事务 事务,TimeSpan 超时) 在 System.Runtime.DurableInstancing.InstanceStore.Execute(InstanceHandle 句柄、InstancePersistenceCommand 命令、TimeSpan 超时) 在 System.Activities.WorkflowApplication.PersistenceManager.Load(时间跨度 暂停) 在 System.Activities.WorkflowApplication.LoadCore(时间跨度超时,布尔 loadAny) 在 System.Activities.WorkflowApplication.Load(Guid instanceId,TimeSpan 超时) 在 System.Activities.WorkflowApplication.Load(Guid instanceId) 在 c:\Users\Kunoichi\Documents\Visual Studio 中的 CEO_StartUpCEORegisterationTest.LoadInstance(Guid wfInstanceId) 2010\Projects\CMERegistrationSystem\RegistrationPortal\CEO\StartUpCEORegisterationTest.aspx.cs:line 64 在 c:\Users\Kunoichi\Documents\Visual Studio 中的 CEO_StartUpCEORegisterationTest.Page_Load(Object sender, EventArgs e) 2010\Projects\CMERegistrationSystem\RegistrationPortal\CEO\StartUpCEORegisterationTest.aspx.cs:line 44 在 System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp,对象 o,对象 t,EventArgs e) 在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(对象发送者, 事件参数 e) 在 System.Web.UI.Control.OnLoad(EventArgs e) 在 System.Web.UI.Control.LoadRecursive() 在 System.Web.UI.Page.ProcessRequestMain(布尔 includeStagesBeforeAsyncPoint,布尔 includeStagesAfterAsyncPoint)
内部异常:System.Data.SqlClient.SqlException Message=Index 'NCIX_KeysTable_SurrogateInstanceId' 表'KeysTable'(在 FROM 子句中指定)不存在。 Source=.Net SqlClient 数据提供者 错误代码=-2146232060 班级=16 行号=211 数量=308 过程=加载实例 服务器= 状态=1 堆栈跟踪: 在 System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult 结果) 在 System.Activities.DurableInstancing.SqlWorkflowInstanceStoreAsyncResult.SqlCommandAsyncResultCallback(IAsyncResult 结果)

我知道这很冗长。但是一个多星期以来,我一直在用头撞墙。我进行了搜索,我所知道的只是在 ms dtc 上工作。我在登台服务器上启用了它,我在登台服务器上安装了应用程序服务器,但我仍然遇到同样的错误。如果有人能帮助解决这个问题,我将不胜感激。在此先感谢:)

【问题讨论】:

  • 您好,构建一个示例 asp.net 应用程序并尝试访问工作流实例存储数据库。是否使用与工作流持久性设置相同的凭据进行访问? Epmty 实例存储数据库并重新部署 wf 程序集。

标签: asp.net workflow-foundation-4 production-environment


【解决方案1】:

谁创建了暂存服务器上使用的持久性存储?使用什么架构来创建它?寻找本地和生产中使用的脚本之间的差异。

【讨论】:

  • 是的,我想通了 :)) 似乎运行的脚本不同。感谢您的回复(Y)
  • 你从我嘴里说出来的话,我什至不确定这是怎么发生的。如果您使用 AppFabric 配置应用程序,它会为您创建/更新数据库。
猜你喜欢
  • 1970-01-01
  • 2021-08-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-20
  • 1970-01-01
  • 2017-03-03
  • 1970-01-01
相关资源
最近更新 更多