5
4

2 回答 2

5

ASP.NET 是一组非常广泛的技术,它包括 WebForms.. 从 MVC5 开始,它还包括 MVC、WebApi 和 WebPages。这就是微软现在所说的“One ASP.NET”倡议。

这些都是 ASP.NET 的一部分,就像 ASP.NET 是 .NET 的一部分一样。这些都只是层。没有称为 asp.net 的“单独”部分不包含这些部分(即使在早期版本中,也没有不包含 WebForms 的 asp.net 版本)。

因此,没有所谓的“纯 asp.net”应用程序。您当然可以编写一个不使用 WebForms 的应用程序(这意味着没有 .aspx 或 ascx 或 .master 文件,没有任何类型的服务器控件......基本上任何存在于 System.Web.UI 命名空间中的东西。)

最多,您可以考虑 System.Web 命名空间中的任何内容(没有任何其他级别的命名空间。基本上这里有什么http://msdn.microsoft.com/en-us/library/system.web.aspx

所以这将是请求对象、响应对象、Cookie 处理、成员资格、FormsAuthentication 等......这是基本的管道,它本身并不是那么有用。您必须编写自己的演示框架才能坐在上面。

还有其他框架,例如 FubuMVC、Nancy、MonoRail 等……它们就像 MVC 或 WebForms 或 WebPages……使用基本的 ASP.NET 类来完成它们的工作。

于 2013-09-02T00:02:28.543 回答
0

作为一个例子,我想向您推荐 ASP.NET MVC。ASP.NET MVC 是 ASP.NET之上的一个框架,但绝对不是 Web 窗体(事实上,它完全取代了它,而且在我看来 - 是最好的)。

ASP.NET 提供一般 Web 通用的服务,例如:

  • 处理请求和响应
  • 安全、身份验证、模拟等
  • 维护一个“应用程序”(Global.asax 的概念,例如,作为一个围绕实例化应用程序的框架,关闭它们,处理诸如路由之类的核心事物,处理未捕获的异常等)
  • 处理托管权限
  • 物理和虚拟应用
  • 一般与 IIS(或其他 Web 服务器)交互
  • 运行模块(除了 HTTP 处理程序)

Web 窗体在 ASP.NET 的基础结构之上添加了一个表示层。它提供了诸如 Forms、ViewState 之类的东西。例如,将代码隐藏代码“翻译”为 HTML 表示。这只是几个例子。

ASP.NET 作为基础结构和 Web 窗体作为表示层之间的分离允许稍后创建 ASP.NET MVC。ASP.NET MVC 根本不依赖“表单”,不尝试模仿 WinForms 开发工作流程(通过使用代码隐藏的“方法”和“属性”等来隐藏原始 HTML),实际上提供了更好和正确的做Web开发的方法。

你问的是ASP.NET。这是一个纯 ASP.NET 的示例,没有 WebForms,没有 MVC。这是一个: http: //support.microsoft.com/kb/308001。它是一个基本的 HTTP 处理程序,在此示例中,每次浏览到某个以结尾的地址时都会运行.sync(通过“教”ASP.NET 处理使用该扩展的每个请求)。顺便说一句,您可以将其视为“控制台”应用程序(用您的话来说)。它获取一个 URL,无论从哪里(curl如果你喜欢,你可以使用)并返回一个文本响应,仅此而已。

于 2013-09-01T23:21:46.793 回答