Удаление префикса пространства имен «d1p1» в XML-выводе DataContractSerializer

Я использую DatacontractSerializer для сериализации моей модели domainModel в XML-файл. Я получаю результат, как показано ниже.

<z:anyType xmlns:i="http://www.w3.org/2001/XMLSchema-instance" z:Id="1" xmlns:d1p1="DCSerialization_IGITApproach" i:type="d1p1:X" xmlns:z="http://schemas.microsoft.com/2003/10/Serialization/">
  <d1p1:Name z:Id="2">Ankit</d1p1:Name>
  <d1p1:PointsDictionary xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" z:Id="3" z:Size="1">
    <d2p1:KeyValueOfstringPointsArrayq9VX7VJJ>
      <d2p1:Key z:Id="4">key1</d2p1:Key>
      <d2p1:Value xmlns:d4p1="http://schemas.datacontract.org/2004/07/SerializationApproach" z:Id="5">
        <d4p1:points z:Id="6" z:Size="2">
          <d2p1:double>45.5</d2p1:double>
          <d2p1:double>546.45</d2p1:double>
        </d4p1:points>
      </d2p1:Value>
    </d2p1:KeyValueOfstringPointsArrayq9VX7VJJ>
  </d1p1:PointsDictionary>
</z:anyType>

И я хочу избавиться от этих префиксов пространства имен "d1p1" и просто хочу как тег вместо . Я пробовал поместить туда атрибут DataMember в свойства моего класса, но это не решает большую часть проблемы. Поскольку выходной XML-файл может редактироваться конечным пользователем, мне нужен более чистый XML-файл по сравнению с приведенным выше.

Первым приоритетом является управление им только с помощью кода, а если это невозможно, то используйте XSLT или любую другую схему.

14
задан Nalaka526 22 February 2012 в 10:24
поделиться