Я пытаюсь вызвать веб-службу WCF, размещенную на IIS, которая просто возвращает текущую дату из оркестровки BizTalk.Для этой службы нет входных параметров.
Пожалуйста, игнорируйте формы First Receive_1 и Last Send_1, так как я только использовал их, чтобы начать работу с этой оркестровкой.Моя оркестровка выглядит следующим образом:
Я использовал мастер «Добавить сгенерированные элементы ...», чтобы добавить сгенерированную ссылку на веб-сервис в Оркестрации.Мое определение веб-службы выглядит следующим образом:
[ServiceContract]
public interface ICalculator
{
[OperationContract]
DateTime GetLastExecutionDate();
}
public class CalculatorService : ICalculator
{
public DateTime GetLastExecutionDate()
{
return DateTime.Now.AddMonths(-6);
}
}
После того, как я добавил сгенерированную ссылку в проект BizTalk, мастер создал набор портов и сообщений из нескольких частей, как показано ниже:
Я также создал локальные сообщения для передачи данных между этими вызовами, как показано ниже:
Теперь я везде читал, что мне нужно будет построитьInputMessage для вызова веб-службы без параметров.
Некоторые форумы / веб-сайты говорят, что мне нужно просто создать пустую форму ConstructMessage с типом MessageType сообщения dateRequest.При этом проект не компилируется, и я получаю следующее сообщение об ошибке:
И другой предлагаемый элемент - сделать MessageAssignment дляпустой документТаким образом, форма MessageAssginment в моем Orchestration имеет следующее:
xDoc = new System.Xml.XmlDocument();
xDoc.LoadXml("<GetLastExecutionDate/>");
dateRequest.parameters = xDoc;
Пока этот компонент компилируется и получает развертывание, мой экземпляр BizTalk get приостанавливается со следующим исключением:
Произошел сбойвыполнение конвейера отправки: "Microsoft.BizTalk.DefaultPipelines.XMLTransmit, Microsoft.BizTalk.DefaultPipelines, версия = 3.0.1.0, культура = нейтральная, PublicKeyToken = 31bf3856ad364e35" Источник: "ассемблер XML" Порт отправки: "REDACTED_1.0.0.0_REDACTED.ExportData_WCFPort_dace989afd9cd9c5 "URI:" http://localhost/COMPANYNAME/WCFService/Service.svc" Причина: этот Ассемблер не может получить спецификацию документа, используя этот тип: "GetLastExecutionDate".
И данные параметров, передаваемые в службу:
Итак, мой вопрос: как мне вызвать службу WCF, которая не ожидает никаких входных параметров.