一个啰嗦的问题 - 请耐心等待!
我想以编程方式创建一个带有命名空间和架构的 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>
我的问题是:如何添加schema的xmlns:xsi和xsi:schemaLocation属性?
(顺便说一下,我不能使用简单的XAttributes,因为在属性名中使用冒号“:”会导致错误...)
还是我需要使用XDocument或其他LINQ类吗?
谢谢...