一个冗长的问题 - 请耐心等待!
我想以编程方式创建一个带有命名空间和模式的 XML 文档。就像是
<myroot
xmlns="http://www.someurl.com/ns/myroot"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.someurl.com/ns/myroot http://www.someurl.com/xml/schemas/myschema.xsd">
<sometag>somecontent</sometag>
</myroot>
我正在使用相当出色的新 LINQ 东西(这对我来说是新的),并希望使用 XElement 来完成上述工作。
我的对象上有一个 ToXElement() 方法:
public XElement ToXElement()
{
XNamespace xnsp = "http://www.someurl.com/ns/myroot";
XElement xe = new XElement(
xnsp + "myroot",
new XElement(xnsp + "sometag", "somecontent")
);
return xe;
}
这给了我正确的命名空间,因此:
<myroot xmlns="http://www.someurl.com/ns/myroot">
<sometag>somecontent</sometag>
</myroot>
我的问题:如何添加模式 xmlns:xsi 和 xsi:schemaLocation 属性?
(顺便说一句,我不能使用简单的 XAtttributes,因为在属性名称中使用冒号“:”时出现错误......)
还是我需要使用 XDocument 或其他一些 LINQ 类?
谢谢...