У меня есть собственный сервис WF 4, использующий SqlWorkflowInstanceStore.Я настраиваю его следующим образом:
var behavior = new SqlWorkflowInstanceStoreBehavior(connStr);
TimeSpan detectionPeriod = behavior.RunnableInstancesDetectionPeriod;
behavior.InstanceCompletionAction = InstanceCompletionAction.DeleteNothing;
behavior.InstanceLockedExceptionAction = InstanceLockedExceptionAction.AggressiveRetry;
behavior.InstanceEncodingOption = InstanceEncodingOption.None;
host.Description.Behaviors.Add(behavior);
Далее в моем коде я явно добавляю поведение IdleBehavior на хост, чтобы обеспечить применение разгрузки.По сути, я не уверен, что делает SqlInstanceStore с точки зрения, в частности, выгрузки рабочих процессов.Управляет ли он этим сам или мне все еще нужно добавить свой IdleBehavior, например так:
// Idle behaviour
var idleBehavior = new WorkflowIdleBehavior();
host.Description.Behaviors.Add(idleBehavior);
Заранее спасибо.