[解決済み] アセンブリから型を読み込めなかったエラー
2022-01-30 08:38:51
質問
Castle WindsorのFluent Interfaceを学ぶために、次のような簡単なテストを書きました。
using NUnit.Framework;
using Castle.Windsor;
using System.Collections;
using Castle.MicroKernel.Registration;
namespace WindsorSample {
public class MyComponent : IMyComponent {
public MyComponent(int start_at) {
this.Value = start_at;
}
public int Value { get; private set; }
}
public interface IMyComponent {
int Value { get; }
}
[TestFixture]
public class ConcreteImplFixture {
[Test]
public void ResolvingConcreteImplShouldInitialiseValue() {
IWindsorContainer container = new WindsorContainer();
container.Register(Component.For<IMyComponent>().ImplementedBy<MyComponent>().Parameters(Parameter.ForKey("start_at").Eq("1")));
IMyComponent resolvedComp = container.Resolve<IMyComponent>();
Assert.AreEqual(resolvedComp.Value, 1);
}
}
}
TestDriven.NETでテストを実行すると、以下のエラーが発生します。
System.TypeLoadException : Could not load type 'Castle.MicroKernel.Registration.IRegistration' from assembly 'Castle.MicroKernel, Version=1.0.3.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc'.
at WindsorSample.ConcreteImplFixture.ResolvingConcreteImplShouldInitialiseValue()
NUnitのGUIでテストを実行すると、次のようになります。
WindsorSample.ConcreteImplFixture.ResolvingConcreteImplShouldInitialiseValue:
System.IO.FileNotFoundException : Could not load file or assembly 'Castle.Windsor, Version=1.0.3.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc' or one of its dependencies. The system cannot find the file specified.
Reflectorで参照しているアセンブリを開くと、その情報が表示されます。
Castle.MicroKernel, Version=1.0.3.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc
を確実に含んでいること。 城.MicroKernel.Registration.IRegistration
何が起こっているのでしょうか?
なお、バイナリの取得は Castleの最新ビルド しかし、私はnantを使ったことがないので、わざわざソースから再コンパイルせず、binディレクトリにあるファイルだけを取り込みました。 また、私のプロジェクトは問題なくコンパイルできることも指摘しておきます。
解決方法は?
グローバルアセンブリキャッシュ(GAC)、または読み込まれていると思われるアセンブリを上書きしている可能性がある場所にアセンブリがありませんか? これは通常、不正なアセンブリが読み込まれた結果です。私の場合は、通常GACにあるものがbin/Debugにあるバージョンを上書きしていることを意味します。
関連
-
[解決済み] ファイル *.mdf をデータベースとして添付できません。
-
[解決済み] Could not find a part of the path ... binroslyncsc.exe
-
[解決済み] アセンブリから型を読み込めなかったエラー
-
[解決済み] データテーブルがすでに別のデータセットに属している
-
[解決済み] ネットワークの位置からアセンブリをロードすることはできません
-
[解決済み] LINQ to Entitiesはメソッドを認識しません。
-
[解決済み] なぜList<T>を継承しないのですか?
-
[解決済み] System.Timers.Timer vs System.Threading.Timer
-
[解決済み] WPFのStaticResourceとDynamicResourceの違いは何ですか?
-
[解決済み] HashSetとListの性能比較
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] CLSID {XXXX} を持つコンポーネントの COM クラスファクトリの取得は、次のエラーにより失敗しました: 80040154。
-
[解決済み] ポストバックまたはコールバックの引数が無効です。 イベント検証は '<pages enableEventValidation="true"/>' を使用して有効になっています。
-
[解決済み] スマートクライアント・ソフトウェアファクトリーの体験談
-
[解決済み] Visual Studioの "ターゲットフレームワーク "が見つからない
-
[解決済み] BasicHttpsBindingとWsHttpBinding with Transport securityの違いは何ですか?
-
[解決済み] リファレンスの追加にSystem.Web.Mvcが表示されないのはなぜですか?
-
[解決済み] AndroidでWCFサービスを利用する方法
-
[解決済み] Windowsイベントログで参照される「フレームワークのバージョン」とは何ですか?
-
[解決済み] 1は有効なWin32アプリケーションではありません "を解決するには?
-
[解決済み] "SSL/TLSセキュアチャネルの信頼関係を当局と確立できませんでした "の解決方法