Mam przepływ pracy WF4 z wieloma funkcjami odbierania.Wiele działań odbierania w WF4 kończy się niepowodzeniem po włączeniu trwałości
Przepływ pracy działa poprawnie, dopóki nie dodasz trwałości. Stworzyłem tabele utrwalania i dodaje następujące konfiguracji \ \ system.serviceModel \ zachowań \ serviceBehaviors odcinek mojego web.config:
<behavior>
<!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
<serviceMetadata httpGetEnabled="true" />
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="true" />
<sqlWorkflowInstanceStore connectionStringName="InstanceStore"
instanceCompletionAction="DeleteAll"
instanceLockedExceptionAction= "NoRetry"
instanceEncodingOption="None"
hostLockRenewalPeriod="00:01:00"
/>
</behavior>
Workflow przyjmuje parametr, który jest instancją WorkflowInstanceDTO POCO mam określone.
Kiedy uruchomić przepływ pracy z następującego kodu
var wfi = new WFService.WorkflowInstanceDTO()
{
Id = 1,
InstanceId = new Guid(),
Description = "Awesome WFI",
WorkflowId = 1
};
proxy.Create(wfi);
To nie na linii proxy.Create z następującym błędem.
Klucz wystąpienie wartości '11e5cf14-c2a8-0fbf-d3b5-c12a91c174ff' już istnieje. Może to wynikać z faktu, że zdefiniowano wiele definicji MessageQuerySets, które mają tę samą wartość CorrelationKey.
Gdy utrwalanie nie jest włączone, nie otrzymuję tego błędu. Czy ktoś to widział? Co ja robię źle?