У меня возникает повторяющаяся проблема при передаче Serialized объектов между не-NET Клиентами и .NET WCF Services.
Когда WCF десериализует объекты, он строго зависит от порядка свойств.
То есть, если я определяю свой класс как:
public class Foo
{
public int ID { get; set; }
public int Bar { get; set; }
}
Затем WCF будет сериализовать объект следующим образом:
<Foo>
<Bar>123</Bar>
<ID>456</ID>
</Foo>
Примечание. Свойства сериализуются в алфавитном порядке.
Если вы попытаетесь десериализовать объект, в котором позиции Bar
и ID
заменены, WCF будет обрабатывать неправильно расположенные элементы как null.
Хотя я знаю, что могу использовать атрибут DataMember
и принудительно назначать определенный порядок, я хочу уменьшить количество раз, когда мне приходится отлаживать проблемы, где поля являются "таинственными".
Итак, мой вопрос: можете ли вы указать Deserializer WCF игнорировать порядок полей при десериализации объектов.