アプリケーション(65個のプロジェクトのソリューション)では、参照されているすべてのアセンブリがNinjectモジュールの存在について実行時に解析されますあまりにも)。モジュールは後でNinjectカーネルにロードされ、各モジュールはカーネルのバインディングを宣言します。ReflectionOnlyモードで新しいAppDomainにアセンブリをロードするときに、メソッドに実装がありません
参照アセンブリをリフレクション専用モードで別のアセンブリにロードするローダを採用しました。 Ninjectがディレクトリからアセンブリをロードできる方法との違いは、ディレクトリにロードしないモジュールを含むアセンブリを格納できることです。まもなく、すべての参照アセンブリが読み込まれるわけではありません。
問題がloader(サシャ理容室への信用が)一つのエントリで
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information
とLoaderExceptions
でいくつかのアセンブリをロードできないということである。ここでは
Method 'BeforeLoad' in type 'Lekis.AppBase.Core.BLLBaseCore' from assembly 'AppBaseCore, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' does not have an implementation.
は、いくつかの「楽しい」事実です:
BeforeLoad
は仮想で実装先ほどのローダー例外は、別のメソッドが実装されていない(そのメソッドは仮想ではありませんでした)、後で明示的に実装したときにメソッドが見つかりませんでした。 .NET 4と5のアセンブリが- すべてがアプリケーションで結構です読み込みに失敗している
- 先週アセンブリ
AppBaseCore
ためのターゲットフレームワークは、.NET 3.5と3のアセンブリは現在、組立AppBaseCore
ためのターゲットフレームワークを - のロードに失敗しました。そうでなければ
ILSpyとILDAsmでチェックしたときにアセンブリに間違いはありません(明らかに)。
この時点で、私は本当に失われており、この問題にどう対処するのか分かりません。
何か助けていただければ幸いです。
おかげ
"メソッド' BeforeLoad'は仮想で、インターフェイスメソッドの実装です。 "それは本当に*ですか? [すべての答えはこちら](http://stackoverflow.com/questions/948785/)をチェックして、何らかのバージョニング/ロード競合にぶつからないようにしてください。アセンブリが構造的に有効であるため、ILSpy/ILDAsmは問題を報告しません。 –
ありがとう、@ JeroenMostert。私はそれを見てみましょう。 –