0

これは私StructureMapControllerFactoryがmvc5プロジェクトで使用したいものです

public class StructureMapControllerFactory : DefaultControllerFactory
{
    private readonly StructureMap.IContainer _container;

    public StructureMapControllerFactory(StructureMap.IContainer container)
    {
        _container = container;
    }

    protected override IController GetControllerInstance(
        RequestContext requestContext, Type controllerType)
    {
        if (controllerType == null)
            return null;

        return (IController)_container.GetInstance(controllerType);
    }
}

次のようにコントローラーファクトリーを構成しましたglobal.asax

public class MvcApplication : System.Web.HttpApplication
{
    protected void Application_Start()
    {

        var controllerFactory = new StructureMapControllerFactory(ObjectFactory.Container);

        ControllerBuilder.Current.SetControllerFactory(controllerFactory);
        AreaRegistration.RegisterAllAreas();
        RouteConfig.RegisterRoutes(RouteTable.Routes);
    }
}

しかし、何 ObjectFactoryですか?それについて名前空間が見つからないのはなぜですか? なぜivが得たのですか:

名前 ObjectFactory は現在のコンテキストに存在しません

コントローラーファクトリーを使用する多くの方法を試しましたが、コード内のオブジェクトファクトリーを感じたときにこの問題が発生しました...本当に退屈でした

4

1 に答える 1