2

我在数据库表中有 XML,需要根据特定条件转换更新值、简单更改。

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

http://ctt.codeplex.com/

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

我可以使用 XSLT,但 XDT 似乎更理想、更简单,但我如何在我的 C# 项目中使用它?

谢谢

4

2 回答 2

6

对于看到这篇文章的任何人,有一个 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);
    }
  }
}

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

于 2015-04-07T13:56:30.230 回答
0

最后找到了一段很好的代码,可以满足我的要求:

http://petemontgomery.wordpress.com/2010/09/20/microsoft-xdt-language/

http://code.google.com/p/xdt/

于 2012-04-20T13:34:31.383 回答