0
初始化容器的:StructureMap異常202沒有定義默認實例(版本2.61)
public override void Initialize()
{
ObjectFactory.Initialize(x =>
{
x.Scan(s =>
{
s.TheCallingAssembly();
s.AssemblyContainingType<IRegistar>();
s.WithDefaultConventions();
});
});
}
Global.asax.xc
var dependencyContainer = new DependencyContainer();
dependencyContainer.Initialize();
ControllerBuilder.Current.SetControllerFactory(new DependencyControllerFactory());
的獲取實例:
public class DependencyControllerFactory : DefaultControllerFactory
{
protected override IController GetControllerInstance(RequestContext requestContext, Type controllerType)
{
if (controllerType == null)
{
return base.GetControllerInstance(requestContext, controllerType);
}
try
{
return ObjectFactory.GetInstance(controllerType) as Controller;
}
catch (StructureMapException exception)
{
Debug.WriteLine(ObjectFactory.WhatDoIHave());
throw;
}
}
}
控制器
私人IBabyRepository _babyReposoitory; {
public BabyController(IBabyRepository babyRepository)
{
_babyReposoitory = babyRepository;
}
類試圖DI/Ioc的
public class BabyRepository : IBabyRepository, IRepository<Baby>, IRegistar
{
Just a Default constructor here();
code...
}
的錯誤:
StructureMap異常代碼:202 沒有默認實例PluginFamily Domain.Repository.IBabyRepository定義,域,版本= 1.0.0.0,文化=中立,PublicKeyToken = null
我
我在做什麼錯?
是否註冊IBabyRepository的WhatDoIHave輸出顯示BabyRepository? – 2011-02-04 20:38:05
另外,顯示您正嘗試實例化的控制器的構造函數。 – 2011-02-04 20:38:46