Asp.net mvc 使用Unity是否会带来性能优势?
我在我的应用程序中一直这样编码:Asp.net mvc 使用Unity是否会带来性能优势?,asp.net-mvc,unity-container,asp.net-mvc-5,Asp.net Mvc,Unity Container,Asp.net Mvc 5,我在我的应用程序中一直这样编码: public class ContentController : ApiController { private IUow _uow; private IContentService _contentService; public ContentController( IUow uow, IContentService contentService) { _uow = uow;
public class ContentController : ApiController
{
private IUow _uow;
private IContentService _contentService;
public ContentController(
IUow uow,
IContentService contentService)
{
_uow = uow;
_contentService = contentService;
}
然后:
container.RegisterType<IContentService, ContentService>();
container.RegisterType();
我是这样开始的,因为我一直在读我应该如何使用接口来实现所有事情的可测试性,以及如何使用Unity这样的东西来轻松地进行更改
但是在一年或更长的时间后,我仍然觉得没有必要改变任何东西,我可以用其他方式测试我的应用程序,而不需要不同的服务
对于小型应用程序(<20个控制器),使用Unity之类的东西真的有什么好处吗。表演怎么样。它是否改善了什么,或者只是使事情复杂化了
对于小型应用程序(<20个控制器),是否真的存在
使用统一之类的东西的好处
是的,因为它使您编写的代码更弱耦合
表演怎么样。它是否改善了什么,或者只是使事情复杂化了
不,这不会提高性能
我可以用其他方式测试我的应用程序,而不需要不同的服务
如果您不使用接口来削弱应用程序不同层之间的耦合,那么不要自欺欺人地认为您正在对应用程序进行单元测试。您所做的是集成测试,这也是必要的,但它有不同的用途
是否使用Unity之类的DI框架并不重要。只需几行代码,您就可以很容易地创建自己的DI。重要的是针对接口编程