在C#中从基于XSD的类创建XML时如何保留冒号?

时间:2018-02-26 09:43:26

标签: c# xml xsd xml-parsing

当前流程

我有一个来自Agresso网站的有效XSD,我已成功转换为课程,使用 xsd.exe

我可以定义我需要的所有对象,例如

    ABWInvoice oInvoiceAgresso = new ABWInvoice() { };
    List<ABWInvoiceInvoice> invoiceslist = new List<ABWInvoiceInvoice>();
    List<ABWInvoiceInvoiceDetail> invoicesDetailsList = new List<ABWInvoiceInvoiceDetail>();

然后填充数据

_parent.invoiceslist.Add(new ABWInvoiceInvoice
                {
                    InvoiceNo = _parent.InvoicesResultSet.Numeric1,

                    Header = new ABWInvoiceInvoiceHeader
                    {
                        InvoiceDate = _parent.InvoiceHeaders.InvoiceDate,
                        DueDate = _parent.vDueDate.Value,
                        OrderRef = _parent.InvoicesResultSet.GenericId,
                        Currency = _parent.Currency.Actual_Currency.TrimEnd(),
                        Seller = new ABWInvoiceInvoiceHeaderSeller { SellerNo = 1000 }
                    },
                    Details = _parent.invoicesDetailsList.ToArray(),
                    Summary = _parent.invoiceSummary
                });

我将节省剩下的代码......最终我得到一个有效的XML文件,其中包含以下与Date相关的元素,这些元素来自上述XSD的agrlib命名空间:

<InvoiceDate>2018-02-01</InvoiceDate>
<DueDate>2018-02-01</DueDate>

问题

现在有一位客​​户回来了,说他们希望保留对agrlib的引用,即他们希望拥有以下内容:

<agrlib:InvoiceDate>2018-02-01</InvoiceDate>
<agrlib:DueDate>2018-02-01</DueDate>

我已经使用w3schools XML validator进行了检查,看起来他们的请求绝对有效,但也可能意味着他们使用自己的解析工具。

问题

我怎样才能在C#中实现他们的请求?

0 个答案:

没有答案