2009-07-17 21 views
10

アセンブリ参照はWebアプリケーション用にどこに保存されていますか?Webアプリケーションプロジェクトアセンブリの参照はどこに格納されていますか?

Webサイトでは、参照を追加するときにweb.configのアセンブリノードにアセンブリタグが書き込まれています。私はちょうどWebアプリケーションプロジェクトが正しいローカルdllを取得するための接続を作成する方法について興味がありますか?

参照とアプリケーションのビルドを手動で追加しますが、dllはBINフォルダにインポートされず、アセンブリノードはWebサイトと同じようにWeb設定で作成されません。私はテキスト 'assembly = "SomeAssembly ..."の検索を行い、結果は見つかりません。

サードパーティのコントロールベンダーが定期的に修正プログラムを出しているため、アセンブリリファレンスの更新を一元化しようとしていて、アセンブリを実行して個々のページ参照をすべて更新する必要があるのは不思議です。 Webサイトプロジェクトでこれを効果的に実行することができましたが、私はWebアプリケーションプロジェクトをかなり新しくしています。任意のアドバイスやリンクをいただければ幸いです。私はアセンブリのヒントを探していると思います& ASP.NET Webアプリケーションプロジェクトのコントロール参照管理。

答えて

2

アセンブリがBINフォルダにインポートされておらず、アプリケーションが機能するので、参照プロパティでGAC(グローバルアセンブリキャッシュ)に格納され、 "copy local = false"とマークされていると仮定します。 Web.configにアセンブリへの参照が表示されないのは、コードビハインドアセンブリのYourApp.dll(Webアプリケーション用に常に作成される)に、そのアセンブリへの標準アセンブリ参照が含まれているためです。アプリケーションを実行すると、GACからアセンブリがロードされます。

1

これらの「不足している」DLLはおそらくGlobal Assembly Cacheにあり、すべての.NETアプリケーションで使用できます。

web.configのpages/controls sectionにコントロール参照を追加できます。これはアプリケーションのすべてのページに適用されます。

3

ほとんどのVisual Studioプロジェクトと同様に、参照はプロジェクトに保持されます。

参照の2種類があります

プロジェクト参照は、同じソリューション内の別のプロジェクトへの参照です。彼らは、次のようになります。

<ProjectReference Include="..\VBClassLibrary1\VBClassLibrary1.vbproj"> 
    <Project>{045D7D9F-8E44-4C4B-95F8-620E86593C5B}</Project> 
    <Name>VBClassLibrary1</Name> 
</ProjectReference> 

ファイルの参照は、ディスク上の任意のファイルへの参照です:

<Reference Include="System.Core"> 
    <RequiredTargetFramework>3.5</RequiredTargetFramework> 
</Reference> 

あなたが参考にフォルダを展開し、参照をクリックすると、[プロパティ]ウィンドウで見て、あなた両方の種類の参照に「ローカルコピー」プロパティがあることがわかります。プロジェクト参照の場合は、ファイル参照がfalseに設定されていると、デフォルトでtrueになります(ただし、ファイルがGACにある場合のみです)。デフォルトを変更すると:

<Private>False</Private> 
関連する問題