Вопрос
Кто-нибудь знает хороший инструмент для создания WSDL для контракта службы, написанного на C# (т.е.набор методов, помеченных как «[OperationContract]» с использованием WCF)?Все инструменты, которые я нашел, работают наоборот:создавать заглушки кода из WSDL.Я не хочу вручную застревать в файле WSDL.Я нашел инструменты для php и J2EE, но не для C#.Спасибо!
Решение
Проще всего разместить службу с настройкой базового адреса, а затем просто нажать на нее из браузера с добавленным в конце «?wsdl».
Ниже приведен пример конфигурации службы с указанным базовым адресом.Обратите внимание, что это идет в <configuration><services>
элемент в вашей конфигурации:
<service name="MyServiceName" behaviorConfiguration="MyServiceBehavior">
<host>
<baseAddresses>
<add baseAddress="http://localhost:9000/MyService"/>
</baseAddresses>
</host>
<endpoint address="net.tcp://localhost:9001/MyService"
binding="netTcpBinding"
contract="IMyService"
bindingConfiguration="MyServiceBinding"/>
</service>
Как только вы его разместите, просто перейдите по адресу http://localhost:9000/MyService?wsdl
чтобы увидеть определение WSDL.
Другие советы
svcutil или просто быстро разместите его и достигните точки MEX :)
Два пути:
а) Загрузите файл wsdl и выполните следующие действия.:
i) Откройте командную строку Visual Studio от имени администратора.
ii) Введите команду ниже:
wsdl.exe [путь к вашему файлу WSDL]
б) С конечной точкой:
i) Откройте командную строку Visual Studio от имени администратора.
ii) введите команду ниже:wsdl.exe http://localhost:9000/MyService