Гость
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Почему так может быть ? Что не так делаю ? / 3 сообщений из 3, страница 1 из 1
12.11.2014, 00:55
    #38802890
Awaiter
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так может быть ? Что не так делаю ?
Привет.

Есть Веб служба. У нее очень простая WSDL вообще-то.

Пытаюсь сформировать из нее Интерфейс, чтобы создать свой сервис.

Пробовал Wsdl.Exe, ScvUtil.Exe - в результате методы и типы импортируются без атрибутов DataContract, MessageContract. Приходится все вручную прописывать. Очень не приятно.

Никто с таким не сталкивался ?
...
Рейтинг: 0 / 0
12.11.2014, 08:09
    #38802956
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так может быть ? Что не так делаю ?
AwaiterПробовал Wsdl.Exe, ScvUtil.Exe - в результате методы и типы импортируются без атрибутов DataContract, MessageContract. Приходится все вручную прописывать. Очень не приятно.wsdl.exe про WCF-ные атрибуты ничего не знает. Он для ASP.Net вебсервисов.

svcutil.exe генерирует нормально, со всеми необходимыми для WCF атрибутами. Если нужен message contract, у svcutil.exe есть ключик /mc.
...
Рейтинг: 0 / 0
12.11.2014, 11:07
    #38803148
WorkerAwa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему так может быть ? Что не так делаю ?
Не все так просто оказалось :)
Вчера ломал голову, и даже из дома задал этот вопрос - не давал покоя.

Сейчас нагуглил вот, что:
http://msdn.microsoft.com/ru-ru/library/ms735109(v=vs.110).aspx

3. Если в языке WSDL не указано ответное действие для всех операций, свойству ReplyAction созданных контрактов операций может быть присвоено значение подстановочного знака (*). Удалите этот параметр свойства. В противном случае при реализации метаданных контракта службы метаданные невозможно будет экспортировать для этих операций .

Генерилось вот, что:
[System.ServiceModel.OperationContractAttribute(Action = "getGoodsInfo", ReplyAction = "*" )]

На основе существующей Wsdl создавал интерфейс, и на основе этого интерфейса делал свой сервис. В результате, когда я запускал этот сервис и пытался к нему подключится (в другом проекте - добавить ссылку на службу), то во время импорта методы были не видны.

Совет в приведенной статье помог. Убрал ReplyAction = "*" и все заработало.
...
Рейтинг: 0 / 0
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Почему так может быть ? Что не так делаю ? / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]