DatacontractSerializer
을 사용하여 내 domainModel을 xml 파일로 직렬화합니다. 다음과 같은 결과가 나옵니다.DataContractSerializer XML 출력에서 "d1p1"네임 스페이스 접두사를 제거하십시오.
<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"네임 스페이스 접두사를 제거 할 그냥 태그 대신 </d1p1:PointsDictionary>
같은 </PointDictionary>
를 원한다. 클래스 속성에 DataMember 특성을 넣으려고했지만 많은 문제가 해결되지 않습니다. 출력 XML 파일은 최종 사용자가 편집 할 수 있으므로 위의 XML 파일과 비교하여보다 깨끗한 XML 파일을 원합니다.
우선 순위는 코드를 통해서만 제어하고 가능한 경우 XSLT 또는 다른 스키마로 이동하는 것입니다.
StackOverflow에 오신 것을 환영합니다. 코드, XML 또는 데이터 샘플을 게시하는 경우 ** 텍스트 편집기에서 해당 행을 강조 표시하고 편집기 툴바의 "코드 샘플"버튼 ('{}) '을 클릭하십시오. 형식 및 구문을 강조 표시하십시오! –