C# 无法解析serviceType[控制器名称]

C# 无法解析serviceType[控制器名称],c#,asp.net-mvc,ioc-container,turbine,C#,Asp.net Mvc,Ioc Container,Turbine,尝试重构现有asp.net-mvc应用程序以将Turbine用作IoC时,我得到以下结果: MvcTurbine.ComponentModel.ServiceResolutionException Could not resolve serviceType 'CommonProject.Web.Shared.Controllers.SearchController' Source Object: at MvcTurbine.Unity.UnityServiceLocator.Resolve[

尝试重构现有asp.net-mvc应用程序以将Turbine用作IoC时,我得到以下结果:

MvcTurbine.ComponentModel.ServiceResolutionException Could not resolve serviceType 'CommonProject.Web.Shared.Controllers.SearchController' Source Object: at MvcTurbine.Unity.UnityServiceLocator.Resolve[T](Type type) 我的注册是这样的

public SearchController(ISearchService searchService):base(new SearchViewData())
{
    this.searchService = searchService;
}
public class SearchServiceRegistration: IServiceRegistration
{
    public void Register(IServiceLocator locator)
    {
        locator.Register<ISearchService>(typeof(LuceneSearchService));
    }
}
更新

我发现这有点愚蠢

locator.Register<ISearchService>(typeof(LuceneSearchService));
应该是

locator.Register<ISearchService,LuceneSearchService>();

不知道第一个语法应该做什么。

你错过了SearchController的注册吗?

据我所知,DI概念,控制器不需要注册。不过我找到了解决办法。我会把它放在OP里