【发布时间】:2009-08-26 11:17:49
【问题描述】:
我正在运行一个包含 SqlWorkflowPersistenceService 和 SqlTrackingService 的工作流运行时(IsTransactional = true)
WorkflowInstance workflowInstance = _workflowRuntime.CreateWorkflow(workflowType);
workflowInstance.Start();
// Assure persistence
workflowInstance.Unload(); // Error occur here
workflowInstance.Load();
我得到的错误是:
PersistenceException "Cannot access a disposed object.\r\nObject name: 'Transaction'."
at System.Workflow.Runtime.WorkflowExecutor.Persist(Activity dynamicActivity, Boolean unlock, Boolean needsCompensation)
at System.Workflow.Runtime.WorkflowExecutor.PerformUnloading(Boolean handleExceptions)
at System.Workflow.Runtime.WorkflowExecutor.Unload()
at System.Workflow.Runtime.WorkflowInstance.Unload()
如果我不添加 SqlTrackingService 或将其“IsTransactional”设置为 true,则一切正常
编辑:此错误仅在使用远程数据库时发生。如果从数据库计算机执行,完全相同的代码将起作用。
【问题讨论】:
标签: c# .net workflow-foundation