Изменение "веб-ссылки" на "сервисная ссылка" изменяет подпись метода - PullRequest
0 голосов
/ 03 сентября 2010

Я помогаю коллеге по этому вопросу, поэтому, если я упускаю некоторые детали, вот почему.

У нас есть веб-приложение asp.net 3.5, вызывающее службу WCF.Первоначально приложение использовало «веб-ссылку» для регистрации службы, однако после возникновения проблемы и записи инцидента в Microsoft их решение состояло в том, чтобы заменить «веб-ссылку» на «ссылку на службу» на службу WCF.

Это замечательно, за исключением того, что когда мы создаем ссылку на службу, сигнатуры методов отличаются от тех, которые использовались при использовании веб-ссылки.

Из того, что я прочитал, этого можно ожидать, однако вв нашем случае это будет означать некоторые существенные изменения в приложении, и, конечно, это должно было произойти вчера ... так что ...

... Мне интересно две вещи:

  1. Является ли нормальным / ожидаемым то, что сигнатуры методов будут меняться в зависимости от ссылочного типа?
  2. Есть ли способ создать ссылку на службу, которая будет генерировать сигнатуры методов, идентичные исходной веб-ссылке?

1 Ответ

2 голосов
/ 03 сентября 2010

Вы можете создать еще один слой между текущими вызовами Web Reference и новым прокси Service Reference.

  1. Создайте ссылку на службу с другим именем и / или пространством имен, чем то, что существует сегодня.
  2. Создайте класс с пространством имен / имен старого прокси-сервера Web Reference.
  3. Создайте сигнатуры методов в новом классе и оберните ваши вызовы в прокси-сервер Service Reference.

Имеет ли это смысл. Это очень простой шаблон адаптера.

...