4

次の一般的なエラーが発生します。

ファイルまたはアセンブリ '...' またはその依存関係の 1 つを読み込めませんでした。指定されたモジュールが見つかりませんでした。

問題は、この dll が管理されていない dll を参照しているため、適切にロードできないことです。IIS にこのファイルを無視させたいだけです。

<remove assembly>web.config でタグをいじっていますが、うまくいきません。

1 つの dll が読み込まれないようにする方法について何か提案はありますか?

4

2 に答える 2

2

特定のアセンブリを制限する方法を見つけることはできませんでしたが、すべてのアセンブリを削除し、必要な特定のアセンブリを追加することで、それを達成することができました。web.configファイルを次のように変更します。

<system.web>
    <compilation targetFramework="4.0">
        <assemblies>
            <remove assembly="*"/>
            <add assembly="example.dll"/>
        </assemblies>
    </compilation>
</system.web>
于 2012-08-15T17:42:49.477 に答える
1

.Net ランタイムは楽しみのためにアセンブリをロードしません。必要な場合にのみそうします-つまり、そのアセンブリのクラス/メソッドを積極的に使用しています。それらを使用するコードが実行されない限り、存在しないアセンブリを参照することさえできます。

したがって、アセンブリが読み込まれないようにしても、アプリケーションは機能しません。つまり、アセンブリを削除すると、依存関係がないためにアプリケーションがクラッシュするのがわかります。

アセンブリを自分で何らかの方法 (Assembly.Load など) でロードしている場合は、そのようなアセンブリをスキップする方法を理解する必要があります...

于 2012-08-14T18:46:35.640 に答える