Использование ReceiveActivity в рабочем процессе Sharepoint - PullRequest
1 голос
/ 11 марта 2010

Я сделал свой первый маленький рабочий процесс в sharepoint, и я пытаюсь получить к нему доступ извне, используя ReceiveActivity. Я создал WCF-файл WCF с

и создал веб-сайт в IIS с тем же пулом приложений, что и сайт sharepoint.

Теперь я могу запустить рабочий процесс из моего doclib, но когда я пытаюсь достичь ReceiveActivity, как показано ниже, я получаю следующую ошибку: «В среде размещения рабочего процесса нет службы персистентности, как того требует операция на экземпляре рабочего процесса ».

Я думаю, что это как-то связано с неиспользованием службы сохранения Sharepoint на моем собственном веб-сайте WCF, но я не уверен. Есть идеи на этот счет ???

DoMyThingContractClient proxy = new DoMyThingContractClient ();

IContextManager contextManager = proxy.InnerChannel.GetProperty<IContextManager>();

IDictionary<string, string> context = contextManager.GetContext();
context.Add("instanceId", myInstanceId);
contextManager.SetContext(context);

result = proxy.GetMyMethod(tb1.Text, tb2.Text);

1 Ответ

0 голосов
/ 11 марта 2010

Вы создали таблицы SQL, на которых размещены рабочие процессы? Те на C:\Windows\Microsoft.NET\Framework\v3.0\Windows Workflow Foundation\SQL\en? Если вы это сделали, теперь вам нужно добавить необходимые теги в вашу конфигурацию (в данном случае это папка WCF с файлом svc), как описано в msdn .

Редактировать после комментариев: попробуйте запустить службу сопротивления в вашем коде:

SqlWorkflowPersistenceService ps = new SqlWorkflowPersistenceService("Initial Catalog=SqlPersistenceService;Data Source=localhost;Integrated Security=SSPI");
currentWorkflowRuntime.AddService(ps);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...