Xml 如何在x++;ax 2012

Xml 如何在x++;ax 2012,xml,axapta,x++,dynamics-ax-2012,Xml,Axapta,X++,Dynamics Ax 2012,我正在尝试在x++中将信息导出为xml。我希望最终结果如下所示。这是根节点。 问题是我没有在所有属性前面显示pidx:prefix。 例如,如果我有这样的代码 xmlRoot = xmlDoc.createElement3(pidx, "Invoice", namespace); 它将产生结果 <pidx:Invoice xmlns:pidx="http://www.api.org/pidXML/v1.0"> 它省略了pidx:假定它位于transactionPurposeI

我正在尝试在x++中将信息导出为xml。我希望最终结果如下所示。这是根节点。 问题是我没有在所有属性前面显示pidx:prefix。 例如,如果我有这样的代码

 xmlRoot = xmlDoc.createElement3(pidx, "Invoice", namespace);
它将产生结果

<pidx:Invoice xmlns:pidx="http://www.api.org/pidXML/v1.0"> 
它省略了pidx:假定它位于transactionPurposeIndicator前面 因此没有给我下面的预期输出。 即使在transactionPurposeIndicator前面添加pidx:。如何显示所有属性,因为这是根节点

<?xml version="1.0" encoding="UTF-8"?> <pidx:Invoice pidx:transactionPurposeIndicator="Original" pidx:version="1.0" xmlns:pidx="http://www.api.org/pidXML/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.api.org/pidXML/v1.0 http://banff.digitaloilfield.com/XML/OI-PIDX-Invoice.xsd">  

试试
xmlRoot.setAttribute2(“transactionPurposeIndicator”,名称空间,“Original”)
而不是
xmlRoot.setAttribute(“transactionPurposeIndicator”、“Original”)这将给出预期的结果

<?xml version="1.0" encoding="UTF-8"?> <pidx:Invoice pidx:transactionPurposeIndicator="Original" pidx:version="1.0" xmlns:pidx="http://www.api.org/pidXML/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.api.org/pidXML/v1.0 http://banff.digitaloilfield.com/XML/OI-PIDX-Invoice.xsd">