나는 모든 요소는 다음과 같이 접두사와 XML 파일을 만들 수 있습니다XmlSerializer를 일으키기 XML 네임 스페이스 접두사
<ps:Request num="123" xmlns:ps="www.ladieda.com">
<ps:ClientId>5566</ps:ClientId>
<ps:Request>
난 내 개체를 직렬화, C#을 스마트하고이 수행합니다
<Request num="123" xmlns="www.ladieda.com">
<ClientId>5566</ClientId>
<Request>
을
ps :가 필요하지 않기 때문에 좋습니다.
그러나 C#에서 모든 접두사를 직렬화하도록 강제하는 방법이 있습니까? 당신의 문자열의 소비자가 XML을 처리 한 경우는 아무튼 이후의 모든의
String XmlizedString = null;
MemoryStream memoryStream = new MemoryStream();
XmlSerializer xs = new XmlSerializer(pObject.GetType());
XmlTextWriter xmlTextWriter = new XmlTextWriter(memoryStream, Encoding.UTF8);
xs.Serialize(xmlTextWriter, pObject);
memoryStream = (MemoryStream)xmlTextWriter.BaseStream;
XmlizedString = UTF8ByteArrayToString(memoryStream.ToArray());
return XmlizedString;
private String UTF8ByteArrayToString(Byte[] characters)
{
UTF8Encoding encoding = new UTF8Encoding();
String constructedString = encoding.GetString(characters);
return (constructedString);
}
BTW, 그것은 당신의 네임 스페이스를 잊고 아니에요. 네임 스페이스가 올바르게 serialize됩니다. 단순히 접두사를 사용하지 않고 있습니다. 접두사를 사용하지 않기 때문에 접두사를 사용하는 것이 좋습니다. –