我们是不是正在使用 .Net 3.5 中的 MVC 框架转向经典 ASP?

Posted

技术标签:

【中文标题】我们是不是正在使用 .Net 3.5 中的 MVC 框架转向经典 ASP?【英文标题】:Are we moving towards classic ASP using MVC framework in .Net 3.5?我们是否正在使用 .Net 3.5 中的 MVC 框架转向经典 ASP? 【发布时间】:2010-09-16 23:28:26 【问题描述】:

看看 MVC 框架,似乎我们需要更多的经典 ASP 知识,而不是 ASP.NET 回发和视图状态。我们是否在实际的前端 html 标记中向后移动到复杂的 UI + 代码逻辑?

【问题讨论】:

【参考方案1】:

你提到这个很有趣......我今天和一位同事进行了同样的谈话。

这是倒退一步吗?我不这么认为......虽然在经典的 asp 中,您在 UI 中有一些复杂的逻辑,但从我在 MVC 中可以看到,复杂的逻辑应该仍然存在于您的业务对象中,并且与对象的任何复杂交互都应该通过控制器完成。

再次,据我所见,目标是在涉及实际业务逻辑时保持 UI 简洁和适合。使用 AJAX 和 JQuery 等使 UI 更加用户友好会导致任何额外的膨胀。

这只是我对 MVC 的初步观察。这是一项非常酷的技术,尤其是它位于 REST 之上的方式,使其非常容易与其他技术一起使用。

我期待在未来的几个项目中尝试它!

【讨论】:

【参考方案2】:

MVC 的全部意义在于代码的分离。模型应该包含你所有的业务逻辑,视图应该只处理用户的输出,控制器应该将这两部分粘合在一起。

【讨论】:

【参考方案3】:

我们将不再试图抽象出 HTML 和 HTTP 请求等基本概念。在 UI 端,这意味着视图与输出更紧密地集成在一起,这不是一件坏事。经典的 ASP 模型转化为将所有内容与输出紧密集成,这是一件坏事。

【讨论】:

【参考方案4】:

我猜,如果您认为 ASP.NET 范式向前迈进了一步,那么有人可能会说 MVC 范式是一种倒退。就我个人而言,我一直认为在经典的 ASP 中编写干净分离的代码要容易得多,而不是在 .NET 中,显示输出文本通常被混入代码块中,无法使用标准的 HTML 编辑器进行访问。我一直认为 ASP.NET 架构更多的是推动 .NET 而不是改进我们应用程序的整体结构,所以从这个意义上说,MVC 是向前迈出的一步。

【讨论】:

【参考方案5】:

如果您在视图中看到与模型和控制器相关的复杂代码逻辑,那么您可能是在错误地处理它。

从纯粹意义上说,您应该能够以最少的工作切换视图(比方说是 XML,而不是 HTML)。只有当数据逻辑包含在模型中并且业务逻辑包含在控制器中时,才会发生这种情况。

因此,如果您要显示购物车,则视图可能只有写出产品数量和总数的代码。模型类将保存产品数据,控制器将执行所有处理,例如添加产品和签出。

【讨论】:

以上是关于我们是不是正在使用 .Net 3.5 中的 MVC 框架转向经典 ASP?的主要内容,如果未能解决你的问题,请参考以下文章

在 .NET 3.5 ASP.NET MVC 应用程序中使用 Google Maps API

选择啥? .net 3.5 中的 ASMX Web 服务或 WCF?

我们如何在 ASP.NET MVC 中为整个区域设置授权?

无法让 sql server compact 3.5 / 4 与 ASP .NET MVC 2 一起使用

.NET Core - 为啥我应该使用视图组件而不是集成在 MVC 应用程序或 Razor 页面中的 Blazor 组件

Angular 路由模板 url 是不是支持 ASP.Net MVC 5 项目中的 *.cshtml 文件?