У меня есть приложение .NET MVC, которое возвращает XML путем сериализации модели представления с использованием DataContractSerializer и XMLDictionaryWriter.Ответом является приведенный ниже XML.
В этом примере обратите внимание, что существует 2 копии одного и того же объекта «Примечание».Когда появляется заметка в первый раз, она идеальна.Во второй раз все строки имеют атрибут «i: nil» и ссылку на предыдущий узел, где появилась та же строка.
Вопросы:
- Я предполагаю, что этокакое-то сжатие.Где это происходит?В IIS?
- Как мне распаковать это в .NET?
Спасибо за вашу помощь!
Том
<Note z:Id="2">
<DateCreated>2011-03-16T11:22:30.2226663-07:00</DateCreated>
<DateModified>2011-03-16T11:22:30.2226663-07:00</DateModified>
<Deleted>false</Deleted>
<PinnedToList>true</PinnedToList>
<PinnedToTile>false</PinnedToTile>
<Revision>1</Revision>
<TagText z:Id="3">#todo #work</TagText>
−
<Tags z:Id="4" z:Size="2">
−
<Tag z:Id="5">
<TagName z:Id="6">todo</TagName>
<UserId>3</UserId>
</Tag>
−
<Tag z:Id="7">
<TagName z:Id="8">work</TagName>
<UserId>3</UserId>
</Tag>
</Tags>
<Text z:Id="9">This is a sample note.</Text>
<User i:nil="true"/>
<UserId>0</UserId>
</Note>
−
<Note z:Id="10">
<DateCreated>2011-03-16T11:22:30.2226663-07:00</DateCreated>
<DateModified>2011-03-16T11:22:30.2226663-07:00</DateModified>
<Deleted>false</Deleted>
<PinnedToList>true</PinnedToList>
<PinnedToTile>false</PinnedToTile>
<Revision>1</Revision>
<TagText z:Ref="3" i:nil="true"/>
−
<Tags z:Id="11" z:Size="2">
−
<Tag z:Id="12">
<TagName z:Ref="6" i:nil="true"/>
<UserId>3</UserId>
</Tag>
−
<Tag z:Id="13">
<TagName z:Ref="8" i:nil="true"/>
<UserId>3</UserId>
</Tag>
</Tags>
<Text z:Ref="9" i:nil="true"/>
<User i:nil="true"/>
<UserId>0</UserId>
</Note>