У меня есть веб-служба WF WCF (служба документооборота 4.0), и каждая операция этой службы имеет одну и ту же подпись, но другое имя.
Моя система получает событие {int eventType, int entityId}
и должна отправить это событие операции в веб-службе, о которой я упоминал выше, используя конфигурацию.
например. Предположим, у меня есть файл конфигурации (который сопоставляет eventType с именем операции):
1 -> "StartOrder"
5 -> "StopOrder"
8 -> "ProcessPaymet"
9 -> "RepartFraud"
поэтому, если я получу eventType
, равный 5, мне нужно сделать что-то вроде:
string operationName = eventTypeToOperationMap[eventType];
new ChannelFactory<IMyWebService>().CreateChannel().CallOperation(operationName, entityId);
и IMyWebService имеет метод:
void StopOrder(int entityId);
Справочная информация: IMyWebService
- это служба рабочего процесса в Windows Workflow Foundation 4.0. Я хочу иметь возможность добавлять новую точку входа в веб-службу и изменять конфигурационный файл для диспетчера событий без необходимости перекомпиляции диспетчера событий.