У меня есть приложение RESTful WCF, которое использует пользовательские классы в качестве параметров метода сервиса. Эти классы украшены атрибутом [DataContract], и каждое из их свойств украшено атрибутом [DataMember].
Deserializer работает в соответствии со следующей страницей "Order Member Order" в MSDN: http://msdn.microsoft.com/en-us/library/ms729813.aspx.
То есть, он ожидает, что элементы в форматированных XML-данных будут следовать описанному порядку. На самом деле, если один из элементов не соответствует порядку, после десериализации он не имеет представленного значения, а имеет значение null.
Есть ли хороший способ разрешить вызывающей программе свободно упорядочивать xml-элементы (т.е. в любом порядке) и иметь десериализацию для каждого упорядочения элементов?
Большинство XML не позволяют вводить элементы в произвольном порядке. Нет никаких оснований позволять это, насколько я знаю.
Сериализатор данных не поддерживает это вообще. Это добавит дополнительные служебные данные и не даст никакой ценности.
Почему ваши абоненты не могут отправить правильный XML?