내가 정보를 추적 액세스 UPS에 노력하고있어, 자신의 예에 따라, 내가 지금 같은 요청을 구축해야합니다C#을 XmlDocument 노드
<?xml version="1.0" ?>
<AccessRequest xml:lang='en-US'>
<AccessLicenseNumber>YOURACCESSLICENSENUMBER</AccessLicenseNumber>
<UserId>YOURUSERID</UserId>
<Password>YOURPASSWORD</Password>
</AccessRequest>
<?xml version="1.0" ?>
<TrackRequest>
<Request>
<TransactionReference>
<CustomerContext>guidlikesubstance</CustomerContext>
</TransactionReference>
<RequestAction>Track</RequestAction>
</Request>
<TrackingNumber>1Z9999999999999999</TrackingNumber>
</TrackRequest>
내가 1을 XmlDocument로 이것을 만드는 데 문제를 기음#. 내가 두 번째를 추가하려고하면 : I 표준을 XmlDocument 만 1 개 루트 노드를하기 때문입니다 추측하고있어
System.InvalidOperationException: This document already has a 'DocumentElement' node.
: <?xml version="1.0" ?> or the <TrackRequest>
는 오류가 발생합니다. 어떤 아이디어?
Heres는 지금까지 내 코드 :
XmlDocument xmlDoc = new XmlDocument();
XmlDeclaration xmlDeclaration = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", null);
XmlElement rootNode = xmlDoc.CreateElement("AccessRequest");
rootNode.SetAttribute("xml:lang", "en-US");
xmlDoc.InsertBefore(xmlDeclaration, xmlDoc.DocumentElement);
xmlDoc.AppendChild(rootNode);
XmlElement licenseNode = xmlDoc.CreateElement("AccessLicenseNumber");
XmlElement userIDNode = xmlDoc.CreateElement("UserId");
XmlElement passwordNode = xmlDoc.CreateElement("Password");
XmlText licenseText = xmlDoc.CreateTextNode("mylicense");
XmlText userIDText = xmlDoc.CreateTextNode("myusername");
XmlText passwordText = xmlDoc.CreateTextNode("mypassword");
rootNode.AppendChild(licenseNode);
rootNode.AppendChild(userIDNode);
rootNode.AppendChild(passwordNode);
licenseNode.AppendChild(licenseText);
userIDNode.AppendChild(userIDText);
passwordNode.AppendChild(passwordText);
XmlElement rootNode2 = xmlDoc.CreateElement("TrackRequest");
xmlDoc.AppendChild(rootNode2);
오류가 발생한 위치에 코드를 게시 할 수 있습니다. 그렇지 않으면 우리는 전화를 통해 질문을받는 자동차 역학과 같습니다 : "내 차는 시작되지 않을 것입니다. 무엇이 문제입니까?" – Cyberherbalist
또한이 예제는 한 요청에 대한 것입니까? 두 가지 유형의 요청과 비슷합니다. 첫 번째는 액세스를 요청하고 두 번째는 추적 정보를 요청하는 것입니다. –
이것은 정확히 그들의 예를 보여줍니다. 우리는 고전적인 ASP에서 비슷한 것을 사용하며, 두 xml 요청은 모두 Msxml2.ServerXMLHTTP 객체를 통해 동시에 전송됩니다. –