web.config文件转换

时间:2014-10-07 11:22:23

标签: c# asp.net xslt web.config-transform

我们每年多次发布产品更新,我们需要能够对客户的web.configs进行更改。

我们希望能够通过c#应用这些更改。

是否有人使用ctt.exe程序并为其实现了包装类?在初始测试中,它似乎剥离了所有不理想的空白。

1 个答案:

答案 0 :(得分:2)

找到了Microsoft.Web.XmlTransform库,无需第三方工具即可完美解析。

using Microsoft.Web.XmlTransform;

...

   using (XmlTransformableDocument document = new XmlTransformableDocument())
                using (XmlTransformation transformation = new XmlTransformation(transformFilePath))
                {
                    document.PreserveWhitespace = true;
                    document.Load(sourceFilePath);

                    var success = transformation.Apply(document);
                    if (!success)
                    {
                        string message = string.Format(
                            "There was an unknown error trying while trying to apply the transform. Source file='{0}',Transform='{1}', Destination='{2}'",
                            sourceFilePath, transformFilePath, destinationFilePath);
                        throw new Exception(message);
                    }

                    document.Save(destinationFilePath);
                }