2009-07-29 41 views
2

当我注册在SM以下,然后尝试创建一个实例我得到的异常 - “StructureMap异常代码:202无默认实例PluginFamily定义...”StructureMap异常代码:202无默认实例定义

Scan(x => 
     { 
      x.Assembly("MVCDemo"); 
      x.Assembly("MVCDemo.Infrastructure"); 
      x.Assembly("MVCDemo.Services"); 

      x.AddAllTypesOf(typeof (IRepository<>)); 
     }); 

     ForRequestedType<IRepository<Employee>>().TheDefault.Is.ConstructedBy(() => new EmployeeRepository()); 


var tmp4 = ObjectFactory.GetInstance<IRepository<Employee>>(); 

当我尝试获取IRepository的实例时发生异常。

有谁知道我错过了什么?

干杯

奥利

回答

5

回答是我不应该使用的ObjectFactory创建实例,我应该使用的容器:

var container = new Container(new MvcDemoRegistry()); 
var cultureProvider = container.GetInstance<IProvideCultureInfo>(); 

奥利

2

你不应该在使用一个容器时使用容器来获取实例IoC和DI。您应该使用构造函数注入并让IoC为您处理注入。

相关问题