2011-01-11 5 views
3

У меня есть рабочий процесс wcf, который имеет три действия приема, упорядоченные последовательным образом. т.е.Рабочий процесс Windows 4.0 Ошибка экземпляра InstancePersistenceCommand

1.receive приложения утверждение 2. Manager1 3. Окончательное утверждение менеджера моя проблема заключается в том, что я нахожусь в состоянии потреблять рабочий процесс от моего клиентского приложения и вызвать первый (получить активность приложения), однако, когда я пытаюсь назвать вторым (утверждение Manager1 получить активность) я получаю следующую ошибку

казнь в InstancePersistenceCommand была прервана, так как экземпляр «16c3dae0-92f5-45e8-bdaf-d6f4051a0a39» еще не сохранялось в магазин экземпляра ,

Я проверил базу данных (таблица хранения экземпляра), и запись, похоже, существует. У меня также есть корреляция, как указано в этом article . Пожалуйста, помогите, это срочно

ответ

0

Является ли GUID правильным? Иногда среда выполнения WF4 генерирует новый идентификатор GUID, если он не может найти существующий, приводящий к некоторым путаным сообщениям об ошибках. Также изменение пространств имен тормозит корреляционные запросы. Поэтому, если вы сделали это, вам нужно воссоздать их или войти в XAML и исправить их.

+0

Руководство - это то же самое, что и в базе данных – lafama

+0

. Что вы подразумеваете под «меняющимися пространствами имен» – lafama

+0

Каждый SOAP службы и, следовательно, WF-службу, используйте пространство имен как часть своего имени. Вы можете изменить их, и это может вызвать проблемы. – Maurice

4

Привет, ребята, я наконец выяснил, в чем проблема. (Его у меня три дня). мне просто нужно добавить следующее

<serviceBehaviors> 
    <behavior> 
    <workflowIdle timeToUnload="0"/> 
</behavior> 

Вы можете получить более подробную информацию по этому article NB: Мой рабочий получал значение по умолчанию timeToUnload 1 минуту (от машины конфигурации). Значение, когда я назвал следующую операцию приема в моем рабочем потоке, рабочий процесс все еще находился в памяти. (Действительно странно)

+0

Рабочий процесс в памяти не является проблемой и только ускоряет работу. Или вы используете серверную ферму и второй запрос поступает на другой сервер? – Maurice

Смежные вопросы