我使用WF4.0开发了各种注册工作流程。每个工作流程都有各种书签。我正在使用注册wf作为asp.net应用程序。
我在本地测试了asp.net应用程序,它运行正常(启动WF,坚持使用db并恢复书签)。当我尝试在登台服务器上测试它时,一切都变得混乱。我再也无法恢复wfs而且收到错误消息:
System.Runtime.DurableInstancing.InstancePersistenceCommandException 用户代码未处理消息=执行 InstancePersistenceCommand命名 {瓮:架构 - 微软-COM:System.Activities.Persistence /命令} LoadWorkflow 被错误打断了。来源= System.Runtime.DurableInstancing 堆栈跟踪: 在System.Runtime.AsyncResult.End [TAsyncResult](IAsyncResult结果) 在System.Runtime.DurableInstancing.InstancePersistenceContext.OuterExecute(InstanceHandle) initialInstanceHandle,InstancePersistenceCommand命令,Transaction 事务,TimeSpan超时) 在System.Runtime.DurableInstancing.InstanceStore.Execute(InstanceHandle handle,InstancePersistenceCommand命令,TimeSpan超时) 在System.Activities.WorkflowApplication.PersistenceManager.Load(TimeSpan 超时) 在System.Activities.WorkflowApplication.LoadCore(TimeSpan timeout,Boolean loadAny) 在System.Activities.WorkflowApplication.Load(Guid instanceId,TimeSpan超时) 在System.Activities.WorkflowApplication.Load(Guid instanceId) at c:\ Users \ Kunoichi \ Documents \ Visual Studio中的CEO_StartUpCEORegisterationTest.LoadInstance(Guid wfInstanceId) 2010 \项目\ CMERegistrationSystem \ RegistrationPortal \ CEO \ StartUpCEORegisterationTest.aspx.cs:行 64 at c:\ Users \ Kunoichi \ Documents \ Visual Studio中的CEO_StartUpCEORegisterationTest.Page_Load(Object sender,EventArgs e) 2010 \项目\ CMERegistrationSystem \ RegistrationPortal \ CEO \ StartUpCEORegisterationTest.aspx.cs:行 44 在System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp,Object o,Object t,EventArgs e) 在System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) 在System.Web.UI.Control.OnLoad(EventArgs e) 在System.Web.UI.Control.LoadRecursive() 在System.Web.UI.Page.ProcessRequestMain(布尔includeStagesBeforeAsyncPoint,布尔includeStagesAfterAsyncPoint)
InnerException:System.Data.SqlClient.SqlException 消息=表'KeysTable'上的索引'NCIX_KeysTable_SurrogateInstanceId'(在FROM子句中指定)不存在。 Source = .Net SqlClient数据提供程序 错误码= -2146232060 类= 16 LineNumber上= 211 总数= 308 过程= LoadInstance 服务器= 状态= 1 堆栈跟踪: 在System.Runtime.AsyncResult.End [TAsyncResult](IAsyncResult结果) 在System.Activities.DurableInstancing.SqlWorkflowInstanceStoreAsyncResult.SqlCommandAsyncResultCallback(IAsyncResult) 结果)
我知道这很冗长。但是我一直在墙上撞了一个多星期。我做了搜索,我所知道的就是在ms dtc上工作。我在登台服务器上启用了它,我在登台服务器上安装了应用程序服务器,但我仍然遇到同样的错误。如果有人能帮助解决问题,我将不胜感激。在此先感谢:)
答案 0 :(得分:1)
谁创建了在登台服务器上使用的持久性存储?用什么模式来创建它?寻找本地和生产中使用的脚本之间的差异。