1
我使用Asp.Net Web服務來獲取QuickBook的數據。我的要求是從公司文件中返回所有銷售訂單。 這是我qbxml時返回使用IncludeRetElement返回特定的子元素Qbxml
<?xml version="1.0" ?>
<QBXML>
<QBXMLMsgsRs>
<SalesOrderQueryRs requestID="whatever" statusCode="0" statusSeverity="Info" statusMessage="Status OK">
<SalesOrderRet>
<TimeCreated>2013-08-27T16:33:27+05:00</TimeCreated>
<CustomerRef>
<ListID>80000033-1376329965</ListID>
<FullName>SOURCE BY DESIGN:Q2633-Atrium1-Wigan</FullName>
</CustomerRef>
<RefNumber>5000</RefNumber>
</SalesOrderRet>
</SalesOrderQueryRs>
</QBXMLMsgsRs>
</QBXML>
我只回用IncludeRetElement幾個字段。問題是我只想要3個字段,即TimeCreated,FullName,RefNumber。 這是我的C#代碼來建立請求。
string strRequestXML = "";
XmlDocument inputXMLDoc = null;
inputXMLDoc = new XmlDocument();
inputXMLDoc.AppendChild(inputXMLDoc.CreateXmlDeclaration("1.0", null, null));
inputXMLDoc.AppendChild(inputXMLDoc.CreateProcessingInstruction("qbxml", "version=\"4.0\""));
XmlElement qbXML = inputXMLDoc.CreateElement("QBXML");
inputXMLDoc.AppendChild(qbXML);
XmlElement qbXMLMsgsRq = inputXMLDoc.CreateElement("QBXMLMsgsRq");
qbXML.AppendChild(qbXMLMsgsRq);
qbXMLMsgsRq.SetAttribute("onError", "stopOnError");
XmlElement salesQueryRq = inputXMLDoc.CreateElement("SalesOrderQueryRq");
qbXMLMsgsRq.AppendChild(salesQueryRq);
salesQueryRq.SetAttribute("requestID", "whatever");
XmlElement timeCreated = inputXMLDoc.CreateElement("IncludeRetElement");
salesQueryRq.AppendChild(timeCreated).InnerText = "TimeCreated";
XmlElement customerRef = inputXMLDoc.CreateElement("IncludeRetElement");
salesQueryRq.AppendChild(customerRef).InnerText = "CustomerRef";
XmlElement templateRef = inputXMLDoc.CreateElement("IncludeRetElement");
salesQueryRq.AppendChild(templateRef).InnerText = "RefNumber";
strRequestXML = inputXMLDoc.OuterXml;
req.Add(strRequestXML);
如何從中刪除ListID。我試圖將IncludeRetElement添加到CustomerRef,但它給出了錯誤。
XmlElement fullName = inputXMLDoc.CreateElement("IncludeRetElement");
customerRef.AppendChild(fullName).InnerText = "FullName";
通過getLastError()從應用程序接收到的錯誤消息:錯誤!
需要幫助我做錯了什麼?