依存性注入に StructureMap を使用するプロジェクトがあります。プロジェクトは MVC プロジェクトとして正常にコンパイルされますが、すべてを MVC2 プロジェクトに移動した後、次のエラーが発生します。
Test.Web.Controllers.StructureMapControllerFactory.GetControllerInstance(System.Type)': C:\Test\Web\Controllers\StructureMapControllerFactory.cs 11 40 Test.Web をオーバーライドする適切なメソッドが見つかりません
ここに私の StructureMapControllerFactory があります:
using System;
using System.Web.Mvc;
using StructureMap;
namespace Test.Web.Controllers
{
public class StructureMapControllerFactory : DefaultControllerFactory
{
protected override IController GetControllerInstance(Type controllerType)**
{
IController result = null;
try
{
if (controllerType == null) return base.GetControllerInstance(controllerType);
result = ObjectFactory.GetInstance(controllerType) as Controller;
}
catch (StructureMapException)
{
System.Diagnostics.Debug.WriteLine(ObjectFactory.WhatDoIHave());
throw;
}
return result;
}
}
}
この問題に半関連する投稿を 1 つ見つけましたが、問題を解決する方法についての洞察は得られませんでした: MVC 2 プレビュー 1 - コントローラー内のパラメーターを持つメソッドの読み込みに失敗しました
明らかに、1.0 から 2.0 への進行からの変更を見逃しているに違いありませんが、何が変更されたのかはわかりません。どんな助けでも大歓迎です。