C#:如何从XElement获取名称(带前缀)作为字符串?

Cha*_*hau 6 c# xml xelement namespaces prefix

这可能是重复的,因为我的问题似乎微不足道,但我无法在stackoverflow.com上找到答案.

我有一个XElement,其数据如下:

<abc:MyElement>My value</abc:MyElement>
Run Code Online (Sandbox Code Playgroud)

问题: 如何从XElement获取带有前缀的完整名称作为字符串?

预期结果:

abc:MyElement
Run Code Online (Sandbox Code Playgroud)

Cha*_*hau 8

我的解决方案至今一直使用的方法GetPrefixOfNamespace在可用XElement.

虽然不是一个漂亮的解决方案,它给了我我想要的东西:

XElement xml = new XElement(...);
string nameWithPrefix = xml.GetPrefixOfNamespace(xml.Name.Namespace) + 
                        ":" + 
                        xml.Name.LocalName;
Run Code Online (Sandbox Code Playgroud)

更优雅的解决方案非常受欢迎:)


the*_*ors 0

不起作用string.Format("{0}:{1}", XElement.Prefix, XElement.Name)