根据我们的问题是如何以编程方式操作XML的第二部分更多的信息,这里是从项目配置一些XML文件。 (web.config中)
<system.web>
<compilation debug="false">
<assemblies>
<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Mvc, Version=1.0.0.0, Culture=neutral,
</compilation>
</compilation>
,并使用LINQ到XML,类似如下
XDocument assemblies = XDocument.Parse("web.config");
var projectAssemblies= from a in assemblies.Descendants("system.web\assemblies")
select new // What ever object you waant
{
Assembly = a.Attribute("assembly").Value.ToString(),
Version = a.Attribute("Version").Value.ToString(),
Culture = a.Element("Culture").Value.ToString(),
PublicKeyToken = a.Attribute("PublicKeyToken").Value.ToString()
};
foreach (var v in projectAssemblies)
{
// enjoy them
}
希望它有助于
你最好的选择是使用某种VS自动化。你真的不应该直接搞乱那些文件。 – 2010-02-05 08:20:57
@Moron:我不明白为什么不。他们基本上是MSBuild文件。 IMO的整个*点*是XML(而不是不透明的二进制文件)是它们是可编辑的。 – 2010-02-05 08:29:10
@Jon理想情况下,我不会说'可编辑'。可读,当然。但是编辑它们可能会有问题,例如,升级到VS的新版本时。除非我们正在谈论真正简单的改变。 – kprobst 2010-02-05 08:32:13