質問

私は、get web.configファイルの変換ローカルでの作業が、展開を行う際に明らかに変換が起こるだけにしたいです。

それは指定してどこ変換web.configファイルを吐き出すために、出力ディレクトリ、プロセスを「再構築」とを経由せずにのMSBuildターゲット「TransformWebConfig」を実行する方法のんの誰でも知っていますか?

編集

:サイードの答えを使用して、私は私のためにタスクを実行しないために.batファイルを作成
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Msbuild.exe "D:\Demo\Transformation.proj" /t:TransformWebConfig 

copy /Y  "D:\Demo\Web.config" "D:\MyProject\Web.config" 

del ""D:\Demo\Web.config"
「Transformation.proj」は、以下の回答でサイードのコードスニペットのコピーです。ただ、ソース、ターゲット、および変換のための宛先を指定します。ディレクトリ:新しいファイルが、この場合には、変換された「web.configファイルは、」「\デモD」になります。私は単純に「デモ」フォルダ内に生成されたファイルを削除、最終的には、私のプロジェクトのweb.configファイルを上書きするためにそれを超えるコピーしています。

また、私はこのバッチファイルを実行して、私のために形質転換のを実行するマクロを作成します:

Public Module DoTransform
    Sub RunTransformBatchFile()
        Try
          Process.Start("D:\Demo\RunTransform.bat")
        Catch ex As System.Exception
            MsgBox(ex.Message)
        End Try
    End Sub
End Module

また、このバッチを実行し、および/または実行するためのショートカットキーを割り当てるには、ツールバー上のボタンを追加することができます。

役に立ちましたか?

解決

あなたは、あなただけの手動TransformXmlタスクを使用したWebパブリッシングパイプラインを使用せずに設定ファイルを変換したい場合。私は http://sedodream.com/2010/でこれに関する詳細なブログ記事を書きました

:4月26日/ ConfigTransformationsOutsideOfWebAppBuilds.aspx のが、ここではハイライトされています
<Project ToolsVersion="4.0" DefaultTargets="Demo" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <UsingTask TaskName="TransformXml"
             AssemblyFile="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.Tasks.dll"/>

    <Target Name="Demo">
        <TransformXml Source="app.config"
                      Transform="Transform.xml"
                      Destination="app.prod.config"/>
    </Target>
</Project>

ここで私は手動でtransform.xmlファイルを使用してapp.configファイルを変換し、転送先のファイルはapp.prod.configです。

あなたが言及したことを

一つは、アプリケーションを実行するときに、ローカルに変換を行うことができるされていました。私たちは、それ自体web.configファイル変換場合は、あなたのアプリケーションをデバッグし、次の時間は、web.configファイルを再度変換しますので、我々は唯一のパブリッシュ/パッケージに変換を行う理由はあります。だから、例えば、あなたのweb.debug.configにあなたが設定した値を追加するための変換を持っている場合は、すべてがOK、あなたがいることを追加初めてですが、その後、次回ランニング/それが再び追加されますあなたのアプリをデバッグします。それを避けるために最善であることはとてもます。

他のヒント

あなたは、Visual Studio 2015を使用している場合は、

、あなたはちょうど所望の環境の変換、および「ビューのプレビュー」をクリックする上でクリックすることができます...それは、その後変換生成されます、そして、あなたは通常にあることをコピーして貼り付けることができますデバッグ目的のために、Web.configファイル。ちょうどそれをコミットしないでください!

XMLトランスフォーム拡張

- あなたは、Visual Studio 2013を使用している場合は、

、あなたはSlowCheetahをインストールすることができます

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top