問題タブ [config-transformation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
153 参照

.net - .Net - 発行場所で開発構成ファイルを構成とマージする

VS 2010 からの更新を公開するときに変更したくない構成セクション (公開された web.config 内) を持つ WCF サービス アプリがあり、変換によって単純に変更することはできません (保持する方法がない限り)。パブリッシュ場所の構成ファイルの config セクション データ)。

config セクションには、e コマース サイトで利用できる支払いに関する情報が含まれています。これは公開された場所で維持され、VS プロジェクトの web.config では更新されません。発行先の場所にある既存の構成ファイルと開発構成ファイルをマージする方法はありますか?

0 投票する
1 に答える
2580 参照

web-config - Web.configの変換と検索および置換

web.configの複数のWCFサービスでIPアドレスを切り替える必要があります。web.config変換では、xpathですべてのアドレスを指定する以外に、検索と置換のステートメントを作成する方法はありますか。たとえば、1.2.3.4のすべてのインスタンスに対して、IPアドレス1.2.3.4を4.3.2.1に切り替えます。

0 投票する
2 に答える
6456 参照

msbuild - Jenkinsでバッチコマンドを使用してweb.config変換のみをトリガーする方法

.NETプロジェクトをビルドするためにJenkinsサーバーをセットアップしています。Visual Studio Web.config変換を使用して、各環境(Dev1、Dev2、QA、およびRelease)の構成ファイルを変換します。MSBuildコマンドで次のコマンドライン引数を使用しており、変換を使用しています。

問題は、環境ごとにソリューションを再構築する必要があることです。一部のソリューションは非常に大きく、構築に時間がかかります。ソリューションを1回だけビルドしてから、他の環境の変換のみをトリガーしたいと思います。MSBuildバッチコマンドを使用してこれを行う方法、またはJenkinsでこれを行う別の方法を知っている人はいますか?

0 投票する
1 に答える
256 参照

c# - 継続的インテグレーションを使用して.NETプロジェクトファイルを変更する

テスト用と本番用の2つのコードベースがあります。これら2つのコードベースの唯一の違いは、2つのファイルにあります。

  • 構成ファイル
  • ビルドファイル(.csproj)

2つのブランチを維持することは、コードベースを1つにマージし、継続的インテグレーション(Hudsonなど)を使用してターゲット環境に応じてファイルを変更することで排除できるかなりの労力です。

VS2010の時点で、構成ファイル用の非常にスマートなソリューションがあり、2つのビルド構成「Release-Test」と「Release-Prod」に対して異なる構成ファイル変換を定義できます。

ただし、プロジェクトファイル(.csproj)には、次のようないくつかの違いが反映されています。

  • 結果のアセンブリの名前:Foo.exeとFoo-Test.exe。
  • アセンブリバージョン。
  • ClickOnce配置設定。

ビルド構成に基づいてcsprojファイルを変換する方法、またはこれらの設定を構成ファイルまたはC#コードに抽出する方法はありますか?

アップデート:

@JaredParによって提案されたように、csprojファイルで条件付きMSBuildプロパティを試してみましたが、いくつかの注意点があります(詳細については私のコメントを参照してください)。これを達成する他の方法はありますか?

0 投票する
1 に答える
2021 参照

msbuild - 変換時に configSource を web.config のインライン要素に変換する方法

現在、私の web.config は次のようになっています。

配置パッケージ (Msbuild.exe + target=Package) を生成するときに、接続文字列を parameters.xml ファイルに「魔法のように」パラメータ化して、配置時に置換することはありません。

接続文字列をインライン化すると、すべて問題なく、接続文字列のパラメーターが生成されます..

そう:

<... configsource="xxx"/> の代わりに、connectionstrings.config の内容を、web.config 変換による展開でコピーするにはどうすればよいですか?

編集: 「デフォルト」の動作は本当に素晴らしいので、Sayed Ibrahimの回答を受け入れました( web.config の接続文字列の自動パラメータ化)しかし、最終的には、パラメータ化する必要があるものを正確に指定する方が良いです.wpp.targetsまたはparameters.xmlファイル)。

0 投票する
1 に答える
236 参照

web-config - Web.Config変換は、web。*。configファイルをコピーするだけです。

私はこれにかなり慣れていませんが、それは本当に単純なようで、なぜそれが機能していないのか知りたいです。一連のリージョン構成マネージャー(テスト、UAT、dr製品)を作成し、web.configを右クリックして構成変換を追加し、関連するファイルに入力しました。

ここで、リージョンのデプロイメントパッケージのビルドに移動し、それを別のマシンにインポートすると、web.test.configまたはその他のファイルがコピーされます。誰かが私が間違っていることを知っていますか?

ヘルプ?!

ジョシュ

0 投票する
4 に答える
14843 参照

msbuild - 自動化されたSlowCheetahビルドメソッド

すべてのビルドサーバーにSlowCheetahをインストールしたくありません。

構成変換にSlowCheetahを使用しており、完全に正常に機能しています。複数のapp.configファイルを生成し、必要に応じてそれらに変更を加えます。

いくつかのサーバーをセットアップしました。それらすべてにコードリポジトリがあり、コマンドラインからコードをプルしてそれに応じてパッケージをビルドします。これらのコードには、これらの構成ファイルが含まれています。ただし、コマンドラインからアプリケーションをコンパイルする場合でも、低速のチーターがインストールされていない場合、変換を使用してパッケージは生成されません。それ以外の場合は正常に動作します。

新しいサーバーと新しいユーザーをいつセットアップするかわからないため、それらすべてにSlowcheetahをインストールすることはできません。

どういうわけか、アプリケーションで遅いcheetah dllを使用し、そこから手動でtransformメソッドを呼び出すことは可能ですか?

ありがとう

0 投票する
7 に答える
26093 参照

xml - SlowCheetahがビルド時にファイルを変換しない

SlowCheetahを使用しようとしているプロジェクトがあります。構成ファイル(Test.web.config)と、ビルド構成で使用するすべての変換(Debug_Mock.config、Debug_SQL.config、Release)を作成しました。ビルド後のイベントがあり、変換されたファイルをコピーすることになっています。別のディレクトリに移動しましたが、ファイルが見つかりません

(エラーxcopyはコード4で終了しました)

SlowCheetahは、私が期待するように、ファイルを変換して出力ディレクトリ(binフォルダ)に配置しているようには見えません。なぜそれが起こらないのか、おそらくどこかの設定について誰かが何か考えを持っていますか?

参考:このプロセスは、同じプロジェクトの別のマシンで機能します。私が同じ設定を言うことができる限り。しかし、私は正しい場所を探していない可能性があります。

0 投票する
1 に答える
1367 参照

ef-code-first - Entity Framework CodeFirst Migrations、最新の変更へのオプションのアップグレードを使用した移行の実行

コードファースト移行が有効になっているEntityFramework5を実行しています。データベース初期化子を使用して実行する:MigrateToLatestVersion

最新の安定したブランチで実行されているいくつかの顧客が住んでいます。トランク/マスターで新しいコードを開発している間、分岐コードfxで実行されている顧客データベースに接続する必要がある場合があります。ある種のデータバグをデバッグします。

誰かが顧客が実行しているブランチに切り替えるのを忘れた場合、これは「危険」になる可能性があります。移行により、その人が実行しているコードに合わせて顧客データベースがアップグレードされるためです。

1つの解決策は、最新バージョンに移行しない別の初期化子を実行することです。しかし、それは、新しいシステムを新しい顧客に展開したり、新しい誰かがチームに加わって、立ち上がって実行する必要がある場合に、より多くの作業を意味します。

この問題を解決するために、app.configにboolを設定して、コードを「最新バージョンに移行」するかどうかを設定し、開発では常にfalseにして、顧客にデプロイするときに変換することを考えていました。

そうすれば、データベースを最新バージョンに自動的に更新できるというメリットがありますが、開発者が誤って古いバージョンのコードのシステムに接続したり、移行によってそのデータベースが破壊されたりする危険はありません。

これで、基本的にこれを確認する必要があります。

(簡略化されたコード)

私の質問は、移行を実行せずにデータベースが存在するかどうかを確認する方法についてでしたが、これを実行できることがわかりました。

ただしMigrateToLatestVersion、データベースが存在しない場合、またはパッケージマネージャーコンソールから手動でUpdate-Databaseを実行する場合にのみ、初期化子を実行する場合。

最初に2つの問題があります。モデルがデータベースと異なるかどうかという例外が発生しなくなりました。2番目:MigrationConfigurationにあるシードメソッドを実行しません。これはまだ実行したい場合があります。

Migrations Initializerを実行してすべての利点を得る方法についての提案はありますが、誰かが誤って本番環境を壊す可能性を防ぐ何かがありますか?

0 投票する
1 に答える
52 参照

visual-studio - 構成変換の適用

そのような質問で申し訳ありませんが、私はそれに多くの時間を費やしました. app.config ファイルがあります。

構成変換で「値」を変更する方法、次のことを試しましたが、何も変わりません:

私は何を間違っていますか?