从XML字符串生成XElement代码

时间:2012-09-05 07:40:18

标签: c# code-generation xelement

有没有办法从给定的XML字符串中生成C#中的XElement表示?

基本上我想要实现的是来自这样的字符串:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0">
  <channel>
    <title>RSS Channel Title</title>
    <description>RSS Channel Description.</description>
    <link>http://aspiring-technology.com</link>
    <item>
      <title>First article title</title>
      <description>First Article Description</description>
    </item>
  </channel>
</rss>

到这样的字符串:

XDocument doc = new XDocument(
   new XDeclaration("1.0", "utf-8", "yes"),
   new XElement("rss", 
       new XAttribute("version", "2.0"),
       new XElement ("channel",
           new XElement("title", "RSS Channel Title"),
           new XElement("description", "RSS Channel Description."),
           new XElement("link", "http://aspiring-technology.com"),
           new XElement("item",
               new XElement("title", "First article title"),
               new XElement("description", "First Article Description")
           )
       )
    );

真的很感激任何提示!

2 个答案:

答案 0 :(得分:3)

ReSharper 2016.1有一个上下文操作,用于将字符串转换为XElement或XDocument对象。

gif example how it works

答案 1 :(得分:1)

看看这个XElement/XDocument Code Generator。 它使用XSLT转换从XML生成c#代码。 如果我自己这样做,我可能也会这样做。