Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Web Service и пересылаемый обьект...
|
|||
|---|---|---|---|
|
#18+
Привет всем, Такой вот вопросик. Есть у меня class Animal определенный в библиотеке(class library). Есть web service с методом GetAnimal() возвращающий соответсвенно экземпляр class Animal. В web service есть ссылка на библиотеку с class Animal. Теперь о клиенте. В клиентском приложении тоже есть ссылка на на библиотеку с class Animal. Сгенерировал proxy class для web service на клиенте. Но! В теперь метод GetAnimal() возвращает class Animal определенный в том же namespace, что и proxy class для web service, а не мой класс Animal из библиотеки. А возможно как то это обойти чтобы GetAnimal() в proxy class возвращал мне сразу экземпляр определенный в моей библиотеке? Блин, надеюсь понятно обьяснил.... Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2008, 14:31 |
|
||
|
Web Service и пересылаемый обьект...
|
|||
|---|---|---|---|
|
#18+
NikulinПривет всем, Такой вот вопросик. Есть у меня class Animal определенный в библиотеке(class library). Есть web service с методом GetAnimal() возвращающий соответсвенно экземпляр class Animal. В web service есть ссылка на библиотеку с class Animal. Теперь о клиенте. В клиентском приложении тоже есть ссылка на на библиотеку с class Animal. Сгенерировал proxy class для web service на клиенте. Но! В теперь метод GetAnimal() возвращает class Animal определенный в том же namespace, что и proxy class для web service, а не мой класс Animal из библиотеки. А возможно как то это обойти чтобы GetAnimal() в proxy class возвращал мне сразу экземпляр определенный в моей библиотеке? Блин, надеюсь понятно обьяснил.... Спасибо. Сериализовать объект вручную и общаться с вебсервисом по HTTP, без генерации прокси-классов. Кстати, а зачем понадобилась такая странная задача. Вебсервисы тем и хороши, что являются самоописываемыми. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2008, 15:08 |
|
||
|
Web Service и пересылаемый обьект...
|
|||
|---|---|---|---|
|
#18+
тыщу раз обсуждалось. либо schema importer extensions либо WCF. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2008, 15:11 |
|
||
|
Web Service и пересылаемый обьект...
|
|||
|---|---|---|---|
|
#18+
Диез Сериализовать объект вручную и общаться с вебсервисом по HTTP, без генерации прокси-классов. А что так легче, проще? Диез Кстати, а зачем понадобилась такая странная задача. Вебсервисы тем и хороши, что являются самоописываемыми. Может я что то не догоняю. Просто думал почему на стороне клиента я должен использовать класс сгенерированный вместе с прокси. А что если у меня какая то логика определена в классе Animal, методы ведь не сгенерируются - просто public свойства... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2008, 15:30 |
|
||
|
Web Service и пересылаемый обьект...
|
|||
|---|---|---|---|
|
#18+
Nikulin Диез Сериализовать объект вручную и общаться с вебсервисом по HTTP, без генерации прокси-классов. А что так легче, проще? Сложностей там нет особых. XmlSerializer + HttpWebRequest. Заодно разобрались бы, как вебсервисы внутри устроены - весьма полезно :) Nikulin Диез Кстати, а зачем понадобилась такая странная задача. Вебсервисы тем и хороши, что являются самоописываемыми. Может я что то не догоняю. Просто думал почему на стороне клиента я должен использовать класс сгенерированный вместе с прокси. А что если у меня какая то логика определена в классе Animal, методы ведь не сгенерируются - просто public свойства... По-хорошему, все методы должен предоставлять сам вебсервис, а передаваться объекты только с данными, без логики. Вдруг кому-то придется использовать ваш вебсервис из Java-приложения, к примеру. Какая тут логика в классе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2008, 08:58 |
|
||
|
Web Service и пересылаемый обьект...
|
|||
|---|---|---|---|
|
#18+
NikulinМожет я что то не догоняю. Просто думал почему на стороне клиента я должен использовать класс сгенерированный вместе с прокси. А что если у меня какая то логика определена в классе Animal, методы ведь не сгенерируются - просто public свойства... Обычно пользователи сервиса используют свои собственные сгенерированные классы, что бы не заморачиваться на ваши внешние библиотеки, которые могут просто банально не подойти, если клиент не под FW; иметь возможность расширить класс для своих нужд, не грузить ваши сборки в отдельный домен, не организовывать междоменное взаимодействие (кто его знает, какие звери вместе с вашей библиотекой к клиенту могли забежать). Так что у генерации сборки на стороне клиента огромное число плюсов. С вашей стороны рекомендуется открыть клиентам исходный текст ключевых (на ваш взгляд) методов, что бы им заново не изобретать велосипед. Ну и описание полное для разработчиков, что бы ваш сервис не выглядел "совершенно черным ящиком". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2008, 22:55 |
|
||
|
Web Service и пересылаемый обьект...
|
|||
|---|---|---|---|
|
#18+
Добавлю к вышесказанному, что подробное описание должно быть в любом случае, так как через некоторое время вы сами можете стать клиентом "черного ящичка", а детали забываются очень быстро, за исключением, разве, приложений типа "hello world" - по описанию можно быстро восстановить или исправить код. А вот по коду быстро воспроизвести описание дано не каждому ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2008, 23:07 |
|
||
|
|

start [/forum/topic.php?fid=19&gotonew=1&tid=1397967]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
65ms |
get topic data: |
9ms |
get first new msg: |
8ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 11ms |
| total: | 176ms |

| 0 / 0 |
