0
- 07.01.2015 - 16:26
|
Добрый день, коллеги! Бэкграунд: В клиент-серверном приложении на стороне клиента была библиотека, выполняющая прямые SQL запросы на сервер. Задача - перенести функциональность библиотеки в службу WCF, работающую непосредственно на сервере, чтобы "не выносить SQL сор из избы". Чтобы не переносить "овердофига" методов из библиотеки, решил завернуть ее в службу целиком. Для каждого метода добросовестно описал интерфейс, все как положено и неплохо работает, вот только раздражает один нюанс. Все типы в библиотеке описаны в одном классе Types и WCF по какой то причине вместо типа, к примеру, Types.Staff без спроса генерирует новый тип TypesStaff с абсолютно аналогичной структурой и содержимым. Приходится на стороне клиента заниматься совершенно ненужным обратным переводом из TypesStaff в Types.Staff. В чем может быть причина? В интернете полно информации о работе со сложными типами WCF, но все они описаны в классе самой службы а не в сторонней библиотеке. Хотя разницы вроде и нет, но может в этом проблема? | |
1
- 08.01.2015 - 13:42
| Проблема, как оказалось, лежала на поверхности. Если на стороне сервера возвращаемое значение имеет тип скажем mylib.Types.Staff, то и на стороне клиента он ищет такой же тип. Если не находит, то генерирует новый, уже от имени сервиса WCF - Myservice.TypesStaff. Поэтому проблема решилась возвратом библиотеки на сторону клиента, но использованием ее только для описания типов. Функциональность обмена данными перенесена на WCF. | |
| Интернет-форум Краснодарского края и Краснодара |