1
XmlDocument
:XmlDocument.Save 생략 요소 내가 런타임에 구축되어 다음과 같은 XML 사용했다
<?xml version="1.0" standalone="yes"?>
<NewConfig xmlns="http://tempuri.org/NewConfig.xsd">
<SystemReference xmlns="">
<ID>1</ID>
<Name>CountryName</Name>
</SystemReference>
<ClientList xmlns="">
<Type>Private</Type>
<!-- elements omitted... -->
<VAT>1234567890</VAT>
</ClientList>
</NewConfig>
나는 다음과 같은 코드를 사용하여 TCP 소켓이 XML을 절약 해요 :
TcpClient client = ...
XmlDocument configDocument = ...
using (StreamWriter writer = new StreamWriter(client.GetStream()))
{
writer.AutoFlush = true;
configDocument.Save(writer);
writer.WriteLine();
}
하지만 소켓의 다른 쪽 끝에서 수신 된 XML이 잘 리게됩니다. 마지막 두 요소 (</ClientList>
및 </NewConfig>
)는 절대로 존재하지 않습니다. 나는 다음과 같은 코드를 사용하는 경우
그러나 XML이 성공적으로 전송됩니다
TcpClient client = ...
XmlDocument configDocument = ...
using (StreamWriter writer = new StreamWriter(client.GetStream()))
{
writer.AutoFlush = true;
writer.WriteLine(configDocument.OuterXml);
}
내 질문에 따라서이다 XmlDocument.Save()
가 Stream
에 기록 할 때 닫는 요소를 무시하는 것 같다 사람이 왜 알고 있나요?