Основные рабочие процессы Windows 4 Упорство в размещенных на веб-сервере сервисах .xamlx не работает - PullRequest
0 голосов
/ 07 декабря 2011

Я пытаюсь создать службу Windows Workflow 4, размещенную в IIS. Я настроил службу, как показано ниже

<system.serviceModel>
    <services>
        <service name="ApprovalService" behaviorConfiguration="ApprovalServiceBehavior">
        </service>
    </services>
    <behaviors>
        <serviceBehaviors>
            <behavior name="ApprovalServiceBehavior">
                <!-- 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="false" />
                <sqlWorkflowInstanceStore connectionStringName="WorkflowPersistence" />
                <workflowIdle timeToPersist="0" timeToUnload="0:05:0"/>
            </behavior>
        </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>

Услуга не сохраняется! В сервисе нет ничего волшебного, как пользовательское сохранение значений и т. Д. У меня это работает в другом сервисе, у которого есть собственный метод персистентности, но я не могу понять разницу.

Возможно, мой сервис работает с ошибками, но я не могу понять, как перейти к отладке.

Любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 07 декабря 2011

Предполагая, что имя вашего сервисного элемента и строка соединения SQL верны, ваш рабочий процесс должен сохраниться, как только он перейдет в режим ожидания.Вы пытались добавить действие «Задержка», чтобы гарантировать его бездействие, или действие «Постоянство», чтобы заставить его сохраняться?

Попробуйте добавить отслеживание или отслеживание, чтобы увидеть, что происходит.Что-то вроде

<system.diagnostics>
  <sources>
    <source name="System.Activities"
            switchValue="Verbose">
      <listeners>
        <add name="textListener"
             type="System.Diagnostics.TextWriterTraceListener"
             initializeData="MyTraceLog.txt"
             traceOutputOptions="ProcessId, DateTime" />
      </listeners>
    </source>
  </sources>
</system.diagnostics>
...