Интерфейс AppFabric в большинстве случаев напрямую не взаимодействует с рабочим процессом или WorkflowServiceHost, но для этого использует WorkflowControlEndpoint и WorkflowControlClient Вы можете сделать то же самое из своего кода, если хотите.
WorkflowControlEndpoint выставляет себя, используя NetNamedPipeBinding по умолчанию, поэтому вам придется изменить это, если вы хотите принимать запросы от другого компьютера.
Конфигурация WorkflowServiceHost:
<service name="MyWorkflow“
behaviorConfiguration="MyWorkflowBehavior">
<host>
<baseAddresses>
<add baseAddress="http://localhost:8080/MyWorkflow" />
</baseAddresses>
</host>
<endpoint address=""
binding="basicHttpBinding"
contract="IMyWorkflow" />
<endpoint kind="workflowControlEndpoint"
address="Control"
binding="basicHttpBinding" />
</service>
Код клиента:
var instanceId = <<an existing workflow instanceId>>;
var controlBinding = new BasicHttpBinding();
var controlAddress =
new EndpointAddress("http://localhost:8080/MyWorkflow/Control");
var proxy = new WorkflowControlClient(controlBinding, controlAddress);
proxy.Suspend(instanceId);