如何将命名空间添加到XML元素

时间:2013-08-02 13:36:07

标签: c# xml

如何通过添加命名空间信息

,使用C#创建如下的XML元素
<Booking bookingRefCode="ABC2123331" bookingAction="addOrUpdate" bookingComplete="true" xmlns="http://schemas.test.com/booking" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:schemaLocation="http://schemas.test.com/booking http://schemas.test.com/Current/xsd/booking.xsd">

这是我目前的代码

            xw.WriteAttributeString("bookingRefCode", book.jobRefNo);
            xw.WriteAttributeString("bookingAction", "addOrUpdate");
            xw.WriteAttributeString("bookingComplete", "true");

所以我添加像这样的新属性

xw.WriteAttributeString("xmlns",  "http://schemas.test.com/booking");

但是对此有任何疑问?

1 个答案:

答案 0 :(得分:0)

xmlns不是标准属性,它是一个特殊的名称空间声明。您不应该直接添加它们,只需使用命名空间添加元素/属性,并自动添加xmlns声明 - 例如:

xw.WriteAttributeString("xsi", "schemaLocation", "http://www.w3.org/2001/XMLSchema-instance", "http://schemas.test.com/booking http://schemas.test.com/Current/xsd/booking.xsd");

添加xsi:schemaLocation属性,同时创建xsmln:xsi="http://www.w3.org/2001/XMLSchema-instance"声明。