アプリケーションで StructureMap と ASP.Net Identity を使用しています。この行が私の中にあるときApplication_Start
ControllerBuilder.Current.SetControllerFactory(new StructureMapControllerFactory());
これはStructureMapControllerFactory
次のとおりです。
public class StructureMapControllerFactory : DefaultControllerFactory
{
protected override IController GetControllerInstance(RequestContext requestContext, Type controllerType)
{
if (controllerType == null && requestContext.HttpContext.Request.Url != null)
throw new InvalidOperationException(string.Format("Page not found: {0}",
requestContext.HttpContext.Request.Url.AbsoluteUri.ToString(CultureInfo.InvariantCulture)));
return ObjectFactory.GetInstance(controllerType) as Controller;
}
}
return ObjectFactory.GetInstance(controllerType) as Controller;
StructureMapConfigurationException
次のように例外をスローします。
No default Instance is registered and cannot be automatically determined for type 'IUserStore<Person>'
しかし、行を削除するControllerBuilder.Current.SetControllerFactory(new StructureMapControllerFactory());
とすべてうまくいくので、私のコードではなくStructureMapの問題です。