我在数据库表中有XML,这些XML需要根据某些条件来转换更新值,简单的更改。

我做了研究,但只发现了适用于Web.Config或App.Config的工具/插件:

http://ctt.codeplex.com/

http://visualstudiogallery.msdn.microsoft.com/69023d00-a4f9-4a34-a6cd-7e854ba318b5

我可以使用XSLT,但是XDT看起来很理想,更简单,但是如何在C#项目中使用它呢?

谢谢

最佳答案

对于遇到这篇文章的任何人,都有一个NuGet软件包提供执行此转换的功能:


安装包Microsoft.Web.Xdt


然后,它遵循以下原则:

// Some example file paths
var sourceDoc = "web.config";
var transDoc = "web.Debug.config";
var destDoc = "bin\web.config";

// The translation at-hand
using (var xmlDoc = new XmlTransformableDocument())
{
  xmlDoc.PreserveWhitespace = true;
  xmlDoc.Load(sourceDoc);

  using (var xmlTrans = new XmlTransformation(transDoc))
  {
    if (xmlTrans.Apply(xmlDoc))
    {
      // If we made it here, sourceDoc now has transDoc's changes
      // applied. So, we're going to save the final result off to
      // destDoc.
      xmlDoc.Save(destDoc);
    }
  }
}


当然,这是非常基本的,最少的检查,但它能为您提供要点。

关于c# - 是否可以在C#项目中使用XDT?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10229820/

10-09 05:33