Маршрутизатор WCF, который объединяет / объединяет многие базовые ответы служб
У меня есть служба маршрутизации WCF с двумя базовыми службами. То, что я хочу получить, - это объединение ответов от двух внутренних служб и возвращение одного агрегированного ответа (который состоит из каждой из двух служб, вызываемых маршрутизатором).
Каждый из этих двух сервисов возвращает массив строк. Например, если первый сервис возвращается new string[2] { "red", "green" }
и результат второго new string[2] { "table", "chair" }
, весь окончательный ответ, который пойдет от маршрутизатора обратно к клиенту, new string[4] { "red", "green", "table", "chair" }
,
Заранее спасибо!
1 ответ
Если я не пропустил что-то из вашего вопроса, вы ищите что-то вроде следующего?
Предполагая, что метод службы WCF называется GetAggregatedResponse:
public string[] GetAggregatedResponse()
{
string[] service1Response = callService1AndGetResult();
string[] service2Response = callService2AndGetResult();
string[] aggregatedResponse = service1Response.Concat(service2Response).ToArray();
// Or if you would like to remove duplicates from the results:
// string[] aggregatedResponse = service1Response.Union(service2Response).ToArray();
return aggregatedResponse;
}