Visual Studio 2010의 향후 릴리스보다 Workflow Foundation (WF) 버전 4.0을 사용하는 방법을 배우려면 Visual Studio 2010 베타 2를 사용하고 있습니다. 내가 알아챈 한 가지는, SQL 데이터베이스 지속성 저장소의 워크 플로를 만든 다음 나중에 응용 프로그램에 다시로드하고 워크 플로를 완료하면 워크 플로의 마지막 작업이 완료 될 때 레코드가 지속성 저장소에서 제거됩니다. 데이터베이스가 거대하게 지켜 지도록 설계가되어 있는지 또는 내가 잘못한 일을하고 있는지 확인해야합니다.Windows Workflow Foundation 4.0 및 지속성
1
A
답변
4
이 삭제 동작은 구성 가능합니다. 당신이 WorkflowServiceHost을 사용하고 서비스 호스트를 구성하는 코드를 사용하는 경우 예를 들어, 다음 예제와 같이 InstanceCompletionAction.DeleteNothing에 SqlWorkflowInstanceStoreBehavior.InstanceCompletionAction을 설정할 수 있습니다 :
WorkflowServiceHost host = new WorkflowServiceHost(workflow, baseAddress);
SqlWorkflowInstanceStoreBehavior persistenceBehavior = new SqlWorkflowInstanceStoreBehavior(connString);
persistenceBehavior.InstanceCompletionAction = InstanceCompletionAction.DeleteNothing;
host.Description.Behaviors.Add(persistenceBehavior);
자세한 내용은의 기능에 SQL 워크 플로 인스턴스 저장소와 구성 방법을 확인하려면 MSDN article을 확인하십시오.