如何在 C# 序列化类中对动态 XML 元素建模?
我有一个 XML 文档,其中元素节点之一可以是动态的,也可以是任何 XML 结构。我在对相应的 C# 序列化类进行建模时遇到了困难。
例如,我的 C# 类中有这样的内容:
[XmlAnyElement]
public XmlNode Value { get; set; }
其中 XmlNode 是 System.Xml.XmlNode。
一些注意事项:
- 我希望 value 是通过 Linq 的 XDocument 加载的 XML 文件(减去 XML 标头标签)
- 虽然我没有找到将 System.Xml.Linq.XNode 转换为 System.Xml.XmlNode 的方法
- 我不希望结果 XML 具有元素
。我希望它成为我加载的 XML 文档的根元素。
I have an XML document where one of the element nodes can be dynamic, or of any XML structure. I'm having a difficult time modeling the corresponding C# serialization class.
For example I have something like this in my C# class:
[XmlAnyElement]
public XmlNode Value { get; set; }
Where XmlNode is System.Xml.XmlNode.
A few notes:
- I want value to be an XML file I'm loading via Linq's XDocument (minus the XML header tag)
- Though I don't see a way to convert an System.Xml.Linq.XNode to System.Xml.XmlNode
- I don't want the result XML to have an element <Value>. I want it to be the root element of the XML document I loaded.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我明白了这一点。我保持属性声明相同并创建了这个帮助器类:
因此值设置如下:
Value = XmlDocumentHelper.FromXDocument(document);
I figured this out. I kept the property declaration the same and created this helper class:
So Value is set like this:
Value = XmlDocumentHelper.FromXDocument(document);