1

如何通过添加命名空间信息使用 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");

但它给出了一个错误关于这个的任何想法?

4

1 回答 1

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"声明。

于 2013-08-02T13:55:20.433 回答