Я новичок в workflow 4.0 и WCF и пытаюсь создать службу WCF, которая создает, запускает и взаимодействует с рабочими процессами разных типов.
Используя workflow 3.5, я смог создать хороший веб-сервис, которыйсоздает и уничтожает рабочие процессы различных типов и позволяет единому интерфейсу взаимодействовать с рабочими процессами различных типов.Например, чтобы создать рабочий процесс с заданным кодом в 3.5: (где код соответствует типу рабочего процесса)
[WebMethod]
public string CreateWorkflow(int code)
{
WorkflowRuntime runtime = createRuntime();
try
{
Type type = GetWorkflowType(code);
string reply = "";
WorkflowInstance instance =
runtime.CreateWorkflow(type);
instance.Start();
reply = instance.InstanceId.ToString();
instance.Unload();
return reply;
}
catch (Exception e)
{
return e.ToString();
}
finally
{
closeRuntime(runtime);
}
}
, а затем связаться с рабочим процессом типа любого :
..
WorkflowInstance instance = runtime.GetWorkflow(new Guid(Id));
PassDataEventArgs eve = new PassDataEventArgs(instance.InstanceId, data);
InputData(null, eve);
..
Можно ли представить такой интерфейс, используя WCF и рабочий процесс 4.0?Мне удалось создать рабочие процессы разных типов с использованием WCF, но для связи с ними я не уверен, как передавать данные.В идеале вызов метода типа passData (идентификатор Guid, данные объекта) в моей службе WCF передал бы эти данные экземпляру рабочего процесса любого типа (при обнаружении ошибки, если рабочий процесс не находится в правильном состоянии для получения данных в то время).Может ли кто-нибудь дать мне какие-либо сведения о том, как я могу добиться таких общих связей между несколькими типами рабочих процессов в рамках одной службы WCF?