1

episerver をインストールすると、episerver アセンブリが GAC に配置されます。C:/windows/assembly で確認できます。

さらに、すべての episerver dll は、episerver のインストール後に C:/Program files/Episerver に存在します。

episerver デプロイメント センターまたは Visual Studio 2010 を介して episerver テンプレートを使用して episerver プロジェクトを作成すると、新しく作成されたプロジェクトの bin フォルダーに多数の episerver-dll が含まれていることがわかりますが、これはそれほど驚くべきことではありません。そして、それらは C:/Program files/ からコピーされたと思います。Visual Studio でプロジェクトを開くと、GAC または C:/program files/episerver からのものではなく、参照されている dll であることがわかります。

さて、これはすべて非常に紛らわしいです。Episerver が dll を gac に入れ、それらを参照しないのはなぜですか? チームで開発するための episerver dll への参照を処理する最良の方法は何ですか?

さらに、IF episerver は GAC からの ddl を参照しますが、VS でそれを確認するにはどうすればよいでしょうか。つまり、参照のプロパティはどうなるでしょうか?

4

2 に答える 2

2

基本的に、これはすべてエピサーバーの展開に関する決定です。私はあなたのすべての質問を一つずつ調べてみます:

  1. dllをGACに入れると、ユーザーが[.NETFramework]タブの参照ダイアログでdllにアクセスできるようにする場合に便利です。単純なプロジェクト(episerverプロジェクトではない)を作成していて、episerverdllを追加したいとします。ハードドライブでそれらを探す代わりに、GACからポイントされたものを参照します。それは開発が簡単です。
  2. GAC dllを参照してみませんか?dllを使用してソリューションを簡単にデプロイすることです。ソリューションをサーバーにデプロイするとします。サーバーはGACにepiserverdllを持っていません(とにかく持っているべきではありません)。したがって、おそらく「copy local = true」プロパティを設定して、dllを出力フォルダーにコピーし、ソリューションを移植可能にします。また、GACアセンブリは「参照」されません。GACには必要に応じてコピーが含まれるだけで、参照はdllとともに「プログラムファイル」フォルダーに追加されます。
  3. 開発チームにとって最良の方法は、GACを使用するか、リポジトリにある種の「サードパーティ」(「外部」)フォルダを定義し、そこにdllを配置することです(そしてそこから参照します)。最初のアプローチでは、すべての開発マシンにepiserverをインストールする必要があり、2番目のアプローチでは、リポジトリ内のスペースを消費します。
  4. GACアセンブリは参照できないため(実際には参照できますが、頭痛の種です)、結果に実質的な違いはなく、パスが異なるだけです。
于 2012-04-01T09:07:01.560 に答える
2

通常、すべての .dll ファイルを格納する別のディレクトリを作成し、そのディレクトリからそれらを参照します。これは、すべてのサードパーティ ライブラリと episerver-dll を意味します。これを行う最大の理由は、新しい開発者がプロ​​ジェクトをセットアップする必要があるときの面倒を避けることと、GAC から参照するときに異なるバージョン間の競合を避けることです。

于 2012-04-03T08:54:58.917 に答える