2010-04-16 67 views
0

我想要为sportstore示例实现IoC时遇到此问题。sportstore示例中的值不能为空

public WindsorControllerFactory() 
{ 
    container = new WindsorContainer(new XmlInterpreter(new ConfigResource("castle"))); 

    var controllerTypes = from t in Assembly.GetExecutingAssembly().GetTypes() 
          where typeof(IController).IsAssignableFrom(t) 
          select t; 

    foreach (Type t in controllerTypes) 
    { 
     container.AddComponentLifeStyle(t.FullName, t, LifestyleType.Transient); 
    } 

    protected override IController GetControllerInstance(Type controllerType) 
    { 
     return (IController)container.Resolve(controllerType); 
    } 
} 

误差表示,值不能在GetControllerInstancenull

任何帮助将不胜感激!

回答

0

你得到的东西不类型的请求....

 protected override IController GetControllerInstance(Type controllerType) 
     { 
      if (controllerType == null) { 
       return null; 
      }else{ 
       return (IController)container.Resolve(controllerType); 
      } 
     }