C# 我可以创建指向同一名称空间的两个不同前缀吗

C# 我可以创建指向同一名称空间的两个不同前缀吗,c#,C#,考虑以下类别: public class root { public string str; } 我是否可以按如下方式创建xml文件: <root xmlns:pf1 = "http://www.w3.org/1999/xhtml" xmlns:pf2 = "http://www.w3.org/1999/xhtml"> <str></str> </root> 因此,我试图为同一名称空间创建两个不同的前缀。另外,我正在使用Xm

考虑以下类别:

public class root {
    public string str;
}
我是否可以按如下方式创建xml文件:

<root xmlns:pf1 = "http://www.w3.org/1999/xhtml" xmlns:pf2 = "http://www.w3.org/1999/xhtml">
    <str></str>
</root>


因此,我试图为同一名称空间创建两个不同的前缀。另外,我正在使用XmlSerializer类,我已经做了相当多的编码。

您尝试了什么,发生了什么?(您使用的是XmlDocument还是LINQ to XML?还是内置的XML序列化?)我想您可以很容易地构造这样一个文档……我使用的内置XML序列化如下:XmlSerializerNamespaces ns=new XmlSerializerNamespaces();ns.Add(“pf1”);ns.Add(“pf2”);-->生成的输出只有一个前缀,因为两者都引用相同的uri。如果两个uri不同,那么这两个前缀将显示在xml输出中。您是否承诺使用内置序列化?这使得精确调整生成的XML变得更加困难。(不清楚为什么要在同一个名称空间中使用两个别名,请注意……如果您提供更多上下文,这会有所帮助。)实际上,我要生成一个输出,根据提供给我的示例,有两个前缀,即'reqif'xhtml'和'xhtml'都指向相同的uri。如果您需要精确控制生成的XML(老实说,这是一个非常奇怪的要求——任何使用XML的东西都应该关注语义而不是别名)然后我建议避免内置序列化。