DataContractSerializer
используется по умолчанию. На стороне сервиса вы можете управлять используемыми сериализаторами с помощью поведения. По умолчанию для этого доступны атрибуты DataContractFormat
и XmlSerializerFormat
. Эти атрибуты могут применяться к контракту на обслуживание, реализации сервиса или операциям. На стороне клиента svcutil будет использовать сериализацию контракта данных, если описание типов сериализуемо DataContractSerializer
, в противном случае он будет использовать XmlSerializer
.
NetDataContractSerializer
не подготовлено поведение - вы должны создать его сами . Это также не распознается клиентами, потому что при использовании NetDataContractSerializer
вы будете делиться сборками с типами (контракты на данные, контракты на обслуживание) с клиентом, чтобы вы могли также поделиться поведением и пометить контракт на обслуживание с этим поведением напрямую.