0
当试图重构现有的asp.net-MVC应用程序使用涡轮作为一个IoC我得到以下结果:无法解析的serviceType [控制器名称]
MvcTurbine.ComponentModel.ServiceResolutionException Could not resolve serviceType 'CommonProject.Web.Shared.Controllers.SearchController' Source Object: at MvcTurbine.Unity.UnityServiceLocator.Resolve[T](Type type)
的(唯一的)构造函数对我SearchController看起来是这样的
public SearchController(ISearchService searchService):base(new SearchViewData())
{
this.searchService = searchService;
}
而且我的注册看起来像这样
public class SearchServiceRegistration: IServiceRegistration
{
public void Register(IServiceLocator locator)
{
locator.Register<ISearchService>(typeof(LuceneSearchService));
}
}
UPDATE
我发现它(这是一个有点傻)
locator.Register<ISearchService>(typeof(LuceneSearchService));
应该已经
locator.Register<ISearchService,LuceneSearchService>();
不知道是什么第一语法应该做虽然。
据我了解DI概念,控制器不应该需要注册。尽管我找到了解决方案。我会把它放在OP中 – 2009-12-17 13:35:42