msbuild拡張機能パックを介してweb.configを「debug = false」に設定する方法は?
-
12-10-2019 - |
質問
WCFサービスアプリケーションがあり、web.configはデバッグモードに設定されています(debug = true):
<compilation debug="true">
<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"/>
</assemblies>
</compilation>
それをMSBuild拡張機能パック(バージョン3.5.8.0)を介して「Debug = false」に設定したいと思います。そうすれば、リリースバージョンは常に非障害モードで自動的に自動的になります。
明らかに、私は使用する必要があります xmlfileクラス, 、しかし、それは何もしません。
私のビルドファイルは次のようになります:
<Target Name="Test">
<MSBuild.ExtensionPack.Xml.XmlFile TaskAction="UpdateAttribute" File="$(MSBuildProjectDirectory)\$(BuildDir)\ServiceClient\web.config" XPath="/configuration/system.web/compilation[@name='debug']" InnerText="false"/>
</Target>
ビルドスクリプトを実行すると、これが表示されます。
Test:
XmlFile: C:\MyProject\Build\ServiceClient\web.config
Update Attribute: /configuration/system.web/compilation[@name='debug']. Value:
エラーも警告なし...何もありません。
msbuildがweb.configを見つけて、それを使って何かをしたことがわかります。しかし、ファイルに目に見える変更はありません。 DIFFツールを使用して、MSBuildの前後にファイルバージョンを比較しましたが、それらは同じです。
私も設定しようとしました Key
と Value
それ以外の InnerText
, 、しかし、それも助けにはなりません。
私が何をしているのか考えてみませんか?
解決
これを試して:
<Target Name="Test">
<MSBuild.ExtensionPack.Xml.XmlFile TaskAction="UpdateAttribute" File="web.config" XPath="/configuration/system.web/compilation" Key="debug" Value="false" />
</Target>
拡張パックバージョン3.5.8.0を使用しています
所属していません StackOverflow