【问题标题】:How to build a module base application using ASP.NET MVC? [closed]如何使用 ASP.NET MVC 构建基于模块的应用程序? [关闭]
【发布时间】:2016-05-21 18:08:35
【问题描述】:

我正在尝试使用 ASP.NET MVC 和实体框架构建一个大型应用程序。我知道这个项目在某个时候会变得非常大,所以我想确保我设计它的方式能够在没有大量不必要的工作的情况下管理它,特别是当我有更多的程序员帮助我的时候。

我喜欢考虑的另一件事是应用程序部署。我不想每次更新或向我的应用程序添加新部分时都必须继续编译我的应用程序。

我相信使用 MVC 设计将使我的代码保持干净且易于维护。但我真正想要强制执行的一件事是模块设计以保持我的文件井井有条。

根据我所做的一些搜索,出现了三个区域,MEF 和 MAF,这似乎基于相同的想法。

我还了解到,对于大多数 MEF 更符合我可能正在寻找的项目的项目来说,MAF 可能是一种过度杀戮。

我发现的大多数文章至少有 2 年的历史,并且都在谈论 ASP.NET MVC 4。我不确定这与 ASP.NET MVC 5 或 ASP.NET MVC 6 的相关性如何。

让我感到困惑的是,MEF 是一个框架,而 ASP.NET MVC 是另一个框架。是否可以使用这两个框架来获得一个带有模块基础应用程序的 MVC 设计,让我可以组织我的文件,而不必在每次需要进行更新或添加新模块时编译我的应用程序?

MVC 和 MEF 的组合是否是大型应用程序的良好开端?在设计我的应用程序时,我应该考虑什么更好的想法吗?

【问题讨论】:

  • 这对于 SO 来说太宽泛/基于意见了......请注意 5 与核心 - 框架有足够的不同,因此建议一个可能不适用于另一个。 5篇2岁的文章绝对适用...
  • I don't want to have to keep compiling my application every time I make update or add new section to my application. - 将持续集成/持续部署与Web Deploy 结合使用,实现起来相对简单。不要仅仅为了部署而使设计比您需要的更复杂。

标签: c# .net asp.net-mvc mef maf


【解决方案1】:

我不认为 MEF 是您正在寻找的答案。 MEF 的设计理念是让开发人员能够创建“可插拔”架构。

设想开发一个应用程序,其核心将在不同客户端之间共享,但其中一些客户端需要一些自定义模块。那么 MEF 就是您要找的。​​p>

相反,根据您的说法,我认为您只是在尝试创建一个整洁且坚固的架构,并且将来易于维护。你不需要MEF。

这是一篇关于如何构建大型 MVC 应用程序并牢记关注点分离原则的好文章:https://chsakell.com/2015/02/15/asp-net-mvc-solution-architecture-best-practices/

【讨论】:

  • 我不确定我是否理解这篇文章。但它似乎没有使用 ASP.NET MVC 框架。我想我想坚持使用 ASP.net MVC,但喜欢将我的文件分成不同的文件夹
  • 当然是使用MVC。它基本上只是告诉您为您的服务、数据访问、域和 mvc 应用程序创建一个单独的项目
猜你喜欢
  • 2015-04-04
  • 2011-04-06
  • 1970-01-01
  • 2011-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-09
  • 1970-01-01
相关资源
最近更新 更多