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