Есть ли способ сделать пользовательскую сериализацию в WCF? - PullRequest
1 голос
/ 02 декабря 2009

В моем решении WCF серверу не нужно знать тип данных. Клиент отправит тип и получит тот же тип.

По соображениям производительности, я думаю, я мог бы реализовать сериализацию вручную в клиентском прокси, избегая встроенной сериализации WCF на стороне сервера, но есть какой-то способ достичь той же цели, просто правильно настроив WCF?

Ответы [ 3 ]

1 голос
/ 08 декабря 2009

Я думаю, что protobuf-net настраивает сериализацию. Если я загляну в его исходный код, то пойму, как достичь своих целей

1 голос
/ 02 декабря 2009

Вся базовая архитектура WCF основана на том, что клиент вызывает сервер, отправляя сериализованное сообщение .

Это и есть основа WCF - передача сообщений. Вы не можете отключить это. Вы можете настроить его, но не можете удалить.

Что касается пользовательской сериализации - ознакомьтесь с превосходной статьей Аарона Сконнарда Сериализация в WCF в журнале MSDN.

Вы можете зайти так далеко, что создали свой собственный сериализатор для WCF - если вы действительно этого хотите - но почему ??

Почему вы, как один разработчик или небольшой магазин, хотите "конкурировать" с довольно значительной командой в Microsoft и заново изобретать колесо сериализации? Я бы предпочел сконцентрироваться на своих реальных бизнес-проблемах, которые Microsoft не может решить для меня, но пусть «клеем инфраструктуры» будет их игра - они хороши в этом, и у них гораздо больше рабочей силы и ресурсов для этого »

0 голосов
/ 02 декабря 2009

Просто сделайте так, чтобы тип, который вы передаете туда и обратно на сервер, имел что-то вроде свойства byte []. Затем вы можете сериализовать ваш известный тип на клиенте. Сервер должен знать только непрозрачные байты

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...