我創建使用ASP.NET MVC(2)和Spring.NET的應用程序。ASP.NET MVC的通用控制器和Spring.NET
由於大多數我的控制器實現的只是實現類似的CRUD操作,我想只需要創建一個單一的通用控制器,如下解釋:
In asp.net mvc is it possible to make a generic controller?
然而,上面的例子中沒有考慮DI框架考慮在內。
我在想什麼是創建這個(警告:這是代碼的醜陋質量我需要幫助):
public SpringGenericControllerFactory : DefaultControllerFactory {
public IController CreateController(RequestContext requestContext, string controllerName) {
// Determine the controller type to return
Type controllerType = Type.GetType("MyController").MakeGenericType(Type.GetType(controllerName));
// Return the controller
return Activator.CreateInstance(controllerType) as IController;
}
}
在objects.xml的條目將是這個樣子:
<object id="controllerFactory" type="Application.Controllers.SpringGenericControllerFactory" />
<object id="DepartmentController" factory-method="CreateController" factory-object="controllerFactory" />
任何人都可以通過挑選這並提供建議?