Создание и предоставление службы SOAP и ее WSDL динамически в C # (с настраиваемым прослушивателем TCP!)

У меня есть собственный HTTP-сервер, встроенный в C #, который принимает запросы на услуги REST и отвечает XML или JSON (в зависимости от того, что нужно клиенту). Службы REST определяются во время выполнения из конфигурации на основе базы данных, сильно различаются по входным параметрам и типам вывода и прекрасно работают в производственной среде.

Однако я хотел бы добавить SOAP-доступ к тем же службам, а также к соответствующим WSDL. Поскольку доступные услуги не жестко закодированы, это означает:

Publishing a WSDL generated at runtime from the method definitions in the database Parsing incoming SOAP requests, mapping them to those definitions, and making sure the requests conform to the method signature before handling them Once the response is handled, creating a SOAP response meeting the WDSL to return the results

Документация MS (и Google) документирует использование Visual Studio для генерации веб-сервисов (и WSDL) во время разработки, демонстрации содержимого с использованием WebMethods, ASP.NET MVC и т. Д. Это не то, что я ищу, так какare no определения методов для создания привязок во время разработки.

У кого-нибудь есть какие-либо идеи (например, наборы инструментов для синтаксического анализа SOAP), а также мысли о создании WSDL из динамически создаваемых сигнатур методов и т. Д.? Есть идеи, как можно строить такие вещи, если нет? Я надеюсь избежать повторного изобретения колеса, если это возможно.

PS: Очевидно, что для этого есть стандартизированный материал в .NET Framework, поскольку Visual Studio делает это за вас - есть идеи, как получить к нему доступ на более низком уровне во время выполнения?

Ответы на вопрос(3)

Ваш ответ на вопрос