7

私はいくつかのサードパーティコンポーネントに必要ないくつかのライセンスファイル(.lic)を持っています。これらのコンポーネントのそれぞれは、binフォルダ内にライセンスファイルが存在する必要があります。ライセンス管理(.lic)ファイルは、自分のbinフォルダにソース管理の対象となるように含めるにはどうすればいいですか?

binフォルダはソース管理から除外されているため、binにある参照ファイルとライセンスファイルはソース管理されていません。 this answerによれば、私はコンパイル済みの参照をソースコントロールでカバーされた別の場所に移動し、プロジェクト内で相対パスで参照しました。私がビルドすると、それらのDLLは私のbinフォルダに正しく含まれています。

私の知る限り、ライセンスファイルには同じ方法を使用できません。それらは、私のVisual Studioプロジェクトに格納する必要があります。 Visual Studioでは、ソースコントロールのある場所にライセンスファイルを保存し、ビルド時にbinフォルダにライセンスファイルを公開するにはどうすればよいですか?私はこれを達成

答えて

11

方法は、(私はあなたがプロジェクト内の任意の場所に置くことができます想像して)プロジェクトのルートに私のライセンスファイルを配置することでした。その後、私は(各.licのファイルをCtrlキーを押しながらクリックするとAltキー + を入力するか、またはプロパティ]タブをクリックを押して)そのプロパティを設定します。

"コピー常に" の原因に Copy to output directoryを設定

Properties

ビルド時にbinフォルダに移動するファイル。 「なし」にBuild actionを設定

は、他のコンテンツと一緒に元の場所で公開されてからファイルを防ぎます。この設定がなければ、ライセンスファイルはWebサイトのルートに公開され、ダウンロードすることができます。

+0

を追加することができます注:私は私のファイルは、 'App_Data'フォルダにあったとき、これは動作しませんでした。それをサイトルートに移動し、魅力的に機能します。 – theyetiman

0

あなたは、Web.configファイルでの設定の下に、これはあなたのLICファイルを公開することを保証します

<configuration> 
    <system.web> 
    <compilation> 
     <buildProviders> 
     <remove extension=".lic"/> 
     <add extension=".lic" 
      type="System.Web.Compilation.ForceCopyBuildProvider"/> 
     </buildProviders> 
    </compilation> 
    </system.web> 
</configuration> 
関連する問題