2

昨日、奇妙な問題に遭遇しました。昨日、ninject を di コンテナーとして使用して、その場しのぎのビューモデル ロケーター スタイル システムを構築しました。次に、データ リポジトリ インターフェイスの moq モック実装を解決して、コンストラクター インジェクションを介してビューモデルにフィードしようとしました。しかし、設計時にmoqから次の例外が発生し続けます。

Error   2   Unable to cast object of type 'Castle.Proxies.IADEmployeeRepoProxy_1' to type 'MVVMSupport.TestHarness.Data.IADEmployeeRepo'.   D:\Users\kicksagnome\Desktop\MVVMSupport\MVVMSupport.TestHarness\App.xaml   16  13  MVVMSupport.TestHarness

Mock<IADEmployeeRepo> repo = new Mock<IADEmployeeRepo>();
repo.Setup<List<ADEmployee>>(r => r.GetAllEmployees())
    .Returns(new List<ADEmployee>() { new ADEmployee() { FirstName = "Ryan Butcher" } });

Bind<IADEmployeeRepo>().ToConstant(repo.Object); //Also tried Bind<IADEmployee>().ToMethod(context => repo.Object);

デザイナーの最初のロードでは問題なく実行されますが、デザイン データが変更されるたびに失敗し、ソリューションを再構築します。

これはmoqの使用方法ではないことを認識しているため、質問は...
1.)この問題を修正する方法はありますか?
2) 設計時のデータはどのように追加すればよいですか?

4

1 に答える 1