[解決済み] Visual StudioでWebプロジェクトでないプロジェクトのApp.Config変換は?
質問
Visual Studio 2010のWebベースアプリケーションには、環境ごとに複数の設定ファイルを保持することができる設定変換機能があります。しかし、同じ機能は、Windowsサービス/WinFormsまたはコンソールアプリケーションのApp.Configファイルには使用できません。
回避策としては、こちらが参考になります。 App.ConfigにXDTマジックを適用する .
しかし、これは一筋縄ではいかず、いくつものステップが必要です。app.configファイルに対して同じことを実現する簡単な方法はないでしょうか?
どのように解決するのですか?
この記事で扱ったVisual Studio AddInで動作するようになりました。 SlowCheetah - Web.config 変換構文があらゆる XML 設定ファイルに対して一般化されました。 .
<ブロッククオートweb.configを右クリックして、"Add Configをクリックします。 Transforms.quot;を実行すると、web.debug.config と web.release.config。web.whatever.configは好きなように作ってください。 コンフィギュレーション・プロファイルと名前が一致している限りは。これらのファイル の完全なコピーではなく、変更したい部分のみです。 web.config。
web.configを変換するのに、XSLTを使いたいと思うかもしれません。 直感的には正しいように感じますが、実際には非常に冗長です。
ここでは、XSLTを使用した変換と、同じものをXML Document Transformの構文/名前空間。すべてのことに言えることですが XSLTでこれを行うには複数の方法がありますが、一般的な考え方はご理解いただけると思います。XSLT は一般的な木構造変換言語であるのに対し、この展開では は、一般的なシナリオの特定のサブセットに対して最適化されています。しかし 各XDT変換は.NETプラグインなので、自分で作ることができます。 を作成します。
<?xml version="1.0" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="/configuration/appSettings">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
<xsl:element name="add">
<xsl:attribute name="key">NewSetting</xsl:attribute>
<xsl:attribute name="value">New Setting Value</xsl:attribute>
</xsl:element>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
または、デプロイメントトランスフォームを使用して同じことを行うこともできます。
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<appSettings>
<add name="NewSetting" value="New Setting Value" xdt:Transform="Insert"/>
</appSettings>
</configuration>
関連
-
[解決済み】COMコンポーネントの呼び出しからエラーHRESULT E_FAILが返された VS2012 デバッグ時
-
[解決済み] このモジュールのデバッグ情報にソース情報がない - PDBが正常にロードされました。
-
[解決済み] MSBuildExtensionsPath32が正しく設定されていない?
-
[解決済み] Visual Studio CodeとVisual Studioの違いは何ですか?
-
[解決済み] デバッグビルドのみVisual Studioのポストビルドイベントを実行する方法
-
[解決済み] Visual Studioで "stdafx.h "は何に使うのですか?
-
[解決済み] Visual Studioで2つのファイルを比較する
-
[解決済み] Visual Studioで2つのプロジェクトを同時に実行する
-
[解決済み】Visual Studioのフォーマットコードのショートカットはありますか?
-
[解決済み】Visual Studioでプロジェクトがビルドされてもエラーが表示される。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] システムトレイにあるvshub.exeとは何ですか?
-
[解決済み] Visual Studio 2019 - エラー MSB8020: Visual Studio 2013 用のビルドツールが見つかりません。
-
[解決済み] Visual Studioの編集ウィンドウを分割する
-
[解決済み] 仮想ディレクトリの作成に失敗し、エラーが発生しました。
-
[解決済み] Visual Studio 2015でexeファイル(ucrtbased.dll)が実行できないのはなぜですか?
-
[解決済み] Windows 8でVisual Studioを常にAdministratorとして実行するように強制することはできますか?
-
[解決済み] Visual Studioで、既存のディレクトリツリーをプロジェクトに追加するにはどうすればよいですか?
-
[解決済み】Visual Studioのエディタにガイドラインを追加する
-
[解決済み】"project" nuget configuration is invalid エラーの取得 [重複]。
-
[解決済み】Visual Studioのポストビルドイベント - 相対的なディレクトリの場所にコピーする