У меня есть приложение сервер / клиент, разработанное в Delphi 2006. Клиент - Win32, а Сервер - веб-служба .net 1.1.
Мы находимся в процессе обновления этого проекта, но это нужно сделать небольшими шагами. Я начал с сервера и создал проект WCF в VS2010 (C # .net 4.0). Первый шаг - запустить сервер в WCF без изменения клиента. Поэтому я использовал шаблон фасада, создал интерфейс, аналогичный старому Delphi Webservice, добавил ссылку на старый .net 1.1 dll и в своей реализации я просто назвал старый код .net 1.1.
Следующий шаг обновления прокси-класса на клиенте. Это не удалось. Импортер WSDL неправильно понимал basicHttpBinding, поэтому созданный прокси-класс не смог заменить существующий прокси.
После небольшого исследования я нашел этот пост в блоге.
http://kjellsj.blogspot.com/2006/12/how-to-expose-wcf-service-also-as-asmx.html
Это сработало, ASMX WSDL ничем не отличался от старого .net 1.1, поэтому все выглядело нормально.
Но это не так. При тестировании нового сервиса я обнаружил, что все мои параметры были пустыми / нулевыми на сервере. Я попытался с Fiddler на клиенте, и параметры присутствуют в XML, который отправляется на сервер.
Так что я застрял. Любые мысли о том, как решить эту проблему, будут высоко оценены. Есть ли какой-нибудь код, который может быть интересен для просмотра, а затем сообщите мне.