Почему мои обычные действия никогда не возвращаются? - PullRequest
1 голос
/ 10 июня 2011

Я новичок в WF и довольно потерян. Вот что у меня есть:

Я создал приложение службы рабочего процесса (xamlx), добавил необходимые переменные Я создал пользовательскую NativeActivity, в которой я вызываю CreateBookmark из Execute, которая находится между действием Receive & Send для службы. (В конечном итоге это действительно что-то делает, кроме создания закладки).

Закладка создается просто отлично, но после выхода из метода Execute ничего не происходит в течение одной минуты, пока не истечет время ожидания службы, сообщив мне об этом: «Канал запроса истек во время ожидания ответа после 00:00: 59.9699970. Увеличьте значение тайм-аута, передаваемое вызову Request, или увеличьте значение SendTimeout в Binding. Время, отведенное для этой операции, могло быть частью более длительного тайм-аута. " (Я попытался опубликовать изображение xamlx, но, как новичок, он не позволил мне; достаточно сказать, что я получаю из моего Получения, в свою собственную нативную деятельность, но никогда не доходил до SendReply).

Я предполагаю, что упускаю что-то довольно фундаментальное, но я не вижу, что. Первоначально я пытался использовать NativeActivity , чтобы вернуть то, что я хочу, но это ведет себя так же.

1 Ответ

1 голос
/ 13 июня 2011

Выяснил, что я делал неправильно: нужно было использовать перегрузку CreateBookmark с параметром BookmarkOptions и установить для него значение BookmarkOptions.NonBlocking.

Странно, я нигде не нашел ни одного примера, который бы упоминал об этом.

...