.NET 的不同 MVC 框架的优缺点
Posted
技术标签:
【中文标题】.NET 的不同 MVC 框架的优缺点【英文标题】:Pros and cons of different MVC frameworks for .NET 【发布时间】:2010-11-10 03:41:46 【问题描述】:随着围绕 MVC 的所有炒作(这是正确的),我决定亲自尝试并编写我的第一个 .NET MVC Web 应用程序。有几个选项可供选择,我想知道人们推荐哪个框架 MVC。
Microsoft ASP.NET MVC 上面带有替代视图引擎 城堡计划 - MonoRail MVC# Maverick.NET似乎前两个确实是最有力的竞争者。此外,一些 DI 容器是 MVC 的自然补充 - MonoRail 已经可以使用 come with one,而 ASP.NET MVC 可能可以与 Unity 之类的东西一起使用。
【问题讨论】:
【参考方案1】:我认为最好的选择是 Microsoft ASP.NET MVC,原因如下:
这是官方的。 它将与 Visual Studio 2010 集成。 它是由为 Microsoft 工作的人开发的。 它是免费的。 它拥有大量拥护它的开发者粉丝群。 它有大量的文档和信息。 .NET 的强大功能触手可及。 不限于使用一种语言进行开发。【讨论】:
虽然它是由微软开发的,但这并不一定是一件好事。其他我可以同意的观点。 您能否详细说明这可能是一件负面的事情? 其实它也集成了VS 2008不是吗? ASP.NET MVC 是 VS 2008 的一个插件,并且与它集成得很好。据我了解,MVC 将随 VS 2010 一起发布。 其中很多点可以在框架之间转移,而其他点,如“它的官方”或“它是由为微软工作的人开发的”对我来说几乎没有意义。【参考方案2】:ASP.NET MVC 带有代码项目中可用的所有常见 DI 框架,而且自己也很容易做到 - 我重写了 StructureMap 以支持一些特定场景(从路线数据)。
这样就解决了你在问题中提到的主要区别;-p
我个人会使用 ASP.NET MVC……但无论哪种方式都可以接近。我只是希望 ASP.NET MVC 会更主流,而“官方”卡片会带来更多书籍/社区/等。
看看这里的标签数量就知道了; asp.net-mvc(和类似的)4k+;单轨……很难找到……
【讨论】:
【参考方案3】:微软 ASP.NET MVC
专业人士:您可以利用 .net 和您在 asp.net 方面的经验
【讨论】:
你的骗局不是真的,因为 ASP.NET MVC 可以在 Mono 上运行。 从 Mono 2.4.2.1 开始,Mono 预打包了 ASP.Net MVC,即微软的 ASP.Net MVC。如前所述,你的骗局是错误的。【参考方案4】:这基本上取决于你想要从中得到什么
也就是说,很难击败 asp.net mvc,因为它是 * 积极维护 *一致/易于使用的命名约定(如果这没有意义,请随意跳过这个:) * 源代码/教程/handon labs 等有详细的文档记录 * 与其他可用选项一起很好地扩展了盒子
我没有听到/看到最后 2 个选项,虽然我确实浏览了这些链接,但考虑到 asp.net mvc 就在那里,我不会花时间学习/阅读它们 - 我的 0.02
【讨论】:
【参考方案5】:这里没有提到的是my favorite since 2014, NancyFx,灵感来自Ruby 世界的Sinatra。
几乎没有开销,不像重量级的官方 ASP.NET MVC。
它适用于 OWIN 和 Razor 模板(以及其他模板)并且易于扩展。
最好的功能是您可以在同一个 MVC 控制器类中编写服务和视图的路由,Nancy 将其称为“模块”
【讨论】:
Nancy 并不完全基于 MVC。从您的最后一行可以看出这一点。以上是关于.NET 的不同 MVC 框架的优缺点的主要内容,如果未能解决你的问题,请参考以下文章
五大JAVA Web框架的优缺点对比,Spring MVC领先