Автоматически обрезать строки во входящих сообщениях WCF - PullRequest
0 голосов
/ 05 марта 2011

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

Я пытался использовать IDataContractSurrogate, но GetDeserializedObject неполучить вызов для десериализации строк.

Есть ли другой способ подключиться к DataContractSerializer, который позволил бы мне изменять строки без масштабного отражения?

1 Ответ

0 голосов
/ 05 марта 2011
  1. Вы можете сделать это путем реализации IXMLSerializable.Пройдите этот вопрос .Конечно, вам необходимо реализовать операцию ReadXml.

  2. Что мешает вам выполнить приведение объекта и обновить его при проверке параметра?

  3. Если выЕсли сервис используется определенными потребителями .Net, вы можете создать клиент сервиса wcf, добавить к нему свою логику обрезки и распространить ее (чтобы потребители могли напрямую использовать клиента вместо создания прокси-сервера для вашего сервиса).Одним из побочных эффектов является то, что вы должны перераспределять клиентские библиотеки всякий раз, когда происходит изменение в контракте.

...