As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center提供指导。




9年前关闭。




我想向有经验的ASP.NET开发人员询问有关如何提高ASP.NET的学习曲线的信息。

我是一位经验丰富的C++和C#开发人员,没有Web应用程序经验。

我发现ASP.NET MVC和ASP.NET是两种不同的技术。我只想问:
  • 这两种技术将共存还是MVC将取代
    ASP.NET?
  • 如果我想学习ASP.NET MVC。我是否需要学习ASP.NET作为先决条件?
  • 您可以推荐一些学习资源吗?书?视频?未付微软培训费:(

  • 非常感谢

    最佳答案

    首先,ASP.NET 是请求/响应管道。这意味着您可以访问请求和响应流以及一些规定,如 session 、缓存、安全性等。

    除此之外,还有 3 个框架负责生成 HTML。第一个也是最古老的称为 ASP.NET Web 窗体。因为它是唯一的,它有时被称为 ASP.NET,但这在当前状态下是不正确的。 ASP.NET MVC 是第二个,还有第三个称为 ASP.NET 网页。所有这三个共享相同的核心 ASP.NET 请求/响应管道和用于 session 、缓存的 API... 不同之处在于它们生成 HTML 的方式。

    您可以查看我对这个问题的回答以获取更多信息。
    Asp.Net Web Forms and Asp.Net Web Pages

    并回答您的具体问题 - 没有 Web 表单不会消失。很多人使用它,MS 正在发布新版本。

    Web Forms 非常适合有桌面背景的人,因为它使用桌面开发人员熟悉的控件模型,并且还具有模拟状态的功能。它还需要较少的 HTML、JS、CSS 知识。 ASP.NET MVC 正好相反。它为您提供了很多控制权,但需要大量有关网络的知识。

    我个人更喜欢 Web 表单而不是 MVC,原因有很多,我不会在这里列出,但即使是 Web 表单的支持者(尤其是我)也会承认 Web 表单是一种非常糟糕的学习 Web 的方式,因为它抽象了很多东西。这为您提供了生产力、安全性等,但如果您不知道底层框架是如何工作的,则可能会导致抽象泄漏的情况,并且很容易跳过学习细节,因为您知道东西可以正常工作......直到它崩溃然后你不知道从哪里开始。

    最终选择是你的,但如果你从 Web 表单开始,一定要了解 HTTP 动词、cookie、原始响应流、http header 、html 表单/提交模型、内联 css 与单独的文件和 javascript 脱离 Web 表单的上下文并制作确定您知道 Web 窗体如何自动执行这些操作。

    10-05 21:00
    查看更多