ASP.NET 提供程序模型是一项伟大的技术,可以解决允许某人将某些功能的单独实现“插入”到 Web 应用程序中的问题。提供者模型通常在实现需要配置时有点痛苦,因此它的使用最少。
IOC 是确保在应用程序的每个级别分离关注点的好方法,因此广泛使用它来支持所有组件的单元测试是很好的。
如果 Web 应用程序正在使用 IOC 容器,那么使用 Provider 模型似乎也是错误的,因为您似乎正在抽象出已经抽象出来的东西,从而产生了两个级别的复杂性(可能除了现有的提供者 - 我正在谈论制作自定义提供者)。
(在我的博客文章中查看更多信息:http ://healthedev.blogspot.com/2011/12/making-custom-built-applications.html )
我正在为 IOC 使用 AutoFac,并且可以允许“配置覆盖”,因此这似乎是满足 Provider Model 给我的相同解决方案的一个很好的选择,但是我不太了解 MEF 如何满足这个要求或如果还有其他我想念的东西吗?
如果您可以从头开始设计一个 ASP.NET MVC Web 应用程序,并且要求您必须转售打包版本,以便其他人可以“插入”某些数据访问,而无需重新编译,那么如何你去实施它?