quickbooks xml error Src Text:<! - ?xml version =“1.0”encoding =“utf-8”? - >

时间:2017-10-05 22:30:25

标签: c# xml encoding utf-8 quickbooks

尝试对quickbooks执行xml请求时遇到某种xml错误。我在C#中使用XDocument创建了xml,我想知道它是否被错误地编码了?

错误消息:

  

线:1 LinePos:1 Src文字:   原因:文档顶层无效。

这是xml文件的开头

<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="13.0"?>
<QBXML>
  <QBXMLMsgsRq onError="stopOnError">

以下是我在C#

中创建xml声明的方法
XmlDocument POx = new XmlDocument();
XmlDeclaration xmldeclaration = POx.CreateXmlDeclaration("1.0", "UTF-8", null );
XmlElement root = POx.DocumentElement;
POx.InsertBefore(xmldeclaration, root);

1 个答案:

答案 0 :(得分:-2)

我通常会像下面的代码一样启动一个文档。它解决了名称空间的很多问题,非常简单:

            string header = "<?xml version=\"1.0\" encoding=\"utf-8\"?><?qbxml version=\"13.0\"?><QBXML></QBXML>";

            XDocument doc = XDocument.Parse(header);
            XElement qbxml = doc.Root;