LinqToXML~读XML文件续

上篇文章读了如何通过linq to xml去读取XML文件,而这讲主要通过linq to xml来读取由属性组件的XML文件,例如读取一个web.config的XML格式的配置文件,下面是config文件的部分内容:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
<section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection, Microsoft.Practices.Unity.Configuration" />
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
</configuration>

下面是linq to xml的代码:

            #region LinqtoXML测试2
System.Console.WriteLine("Loading XML data2...");
var dataXml =
(from e in XElement.Load("D:\\config.xml")
.Element("configSections")
.Elements("section")
select new
{
name = (string)e.Attribute("name"),
type = (string)e.Attribute("type"),
}).ToList();
dataXml.ForEach(i => System.Console.WriteLine(i.name + " " + i.type));
#endregion

我们看一下结果:

aaarticlea/png;base64,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" alt="" />

基本上,对于XML文件的读取也就是两种类型了,下讲我们将会讲一下如何对两种XML文件进行插入。

上一篇:loj#6436. 「PKUSC2018」神仙的游戏(生成函数)


下一篇:rapidxml读xml文件