ASP.NET 概述

ASP.NET 是一个免费的 Web 框架,用于使用 HTML、CSS 和 JavaScript 构建出色的网站和 Web 应用程序。 还可以创建 Web API 并使用 Web 套接字等实时技术。

ASP.NET Core是 ASP.NET 的替代方法。 请参阅有关如何在 ASP.NET 和 ASP.NET Core之间进行选择的指导

入门

安装 Visual Studio Community 版本,这是 Windows 上 ASP.NET 的免费 IDE。

网站和 Web 应用程序

ASP.NET 提供了三个用于创建 Web 应用程序的框架:Web Forms、ASP.NET MVC 和 ASP.NET 网页。 这三个框架都稳定且成熟,你可以使用其中任何一个框架创建出色的 Web 应用程序。 无论你选择哪种框架,你都会随时随地获得 ASP.NET 的所有优势和功能。

每个框架面向不同的开发风格。 你选择的资源取决于编程资产 (知识、技能和开发体验) 、要创建的应用程序类型以及你熟悉的开发方法的组合。

下面是每个框架的概述,以及有关如何在它们之间进行选择的一些想法。 如果你更喜欢视频简介,请参阅 使用 ASP.NET 制作网站什么是 Web 工具?

框架 如果你有经验 开发风格 专业知识
Web 窗体 Win Forms、WPF、.NET 使用封装 HTML 标记的丰富控件库快速开发 中级、高级 RAD
MVC Ruby on Rails, .NET 完全控制 HTML 标记、代码和标记分隔,易于编写测试。 (SPA) 的移动和单页应用程序的最佳选择。 中级、高级
网页 经典 ASP、PHP HTML 标记和代码一起在同一文件中 新建、Mid-Level

Web 窗体

借助 ASP.NET Web Forms,可以使用熟悉的拖放事件驱动模型生成动态网站。 利用设计图面以及许多控件和组件,你可以迅速生成带有数据访问的高级的、功能强大的 UI 驱动型网站。

详细了解Web Forms

MVC

ASP.NET MVC 为你提供功能强大、基于模式的方法来构建实现完全分离关注点的动态网站,从而让你完全控制标记,以便进行愉快、灵活的开发。 ASP.NET MVC 包括许多功能,可实现快速、TDD 友好的开发,以便创建使用最新 Web 标准的复杂应用程序。

详细了解 MVC

ASP.NET 网页

ASP.NET 网页和 Razor 语法提供了一种快速、易行且轻量的方式,可将服务器代码与 HTML 结合使用,以创建动态 Web 内容。 连接到数据库、添加视频、链接到社交网络网站,并包含更多功能,可帮助你创建符合最新 Web 标准的美丽网站。

详细了解网页

有关Web Forms、MVC 和网页的说明

这三个 ASP.NET 框架都基于 .NET 和 ASP.NET 的核心功能.NET Framework和共享。 例如,所有三个框架都提供基于成员身份的登录安全模型,这三个框架共享用于管理请求、处理会话等的相同设施,这些设施是核心 ASP.NET 功能的一部分。

此外,这三个框架并不完全独立,选择一个框架并不排除使用另一个框架。 由于框架可以共存在同一 Web 应用程序中,因此使用不同框架编写的应用程序的各个组件并不罕见。 例如,应用面向客户的部分可能在 MVC 中开发,以优化标记,而数据访问和管理部分是在Web Forms中开发的,以利用数据控制和简单的数据访问。

Web API

ASP.NET Web API 是一种框架,用于轻松构建可以访问多种客户端(包括浏览器和移动设备)的 HTTP 服务。 ASP.NET Web API 是用于在 .NET Framework 上生成 RESTful 应用程序的理想平台。

详细了解 Web API

实时技术

ASP.NET SignalR 是 ASP.NET 开发人员的新库,可简化实时 Web 功能开发。 SignalR 允许服务器和客户端之间的双向通信。 服务器可以在可用时立即将内容推送到连接的客户端。 SignalR 支持 Web 套接字,并回退到旧版浏览器的其他兼容技术。 SignalR 包括用于连接管理的 API (,例如连接和断开连接事件) 、分组连接和授权。

详细了解 SignalR

移动应用和网站

ASP.NET 可以使用 Web API 后端为本机移动应用提供支持,还可以使用响应式设计框架(如 Twitter Bootstrap)的移动网站。 如果要构建本机移动应用,可以轻松创建基于 JSON 的 Web API 来处理应用的数据访问、身份验证和推送通知。 如果要构建响应式移动站点,则可以使用任何 CSS 框架或开放网格系统,或者选择功能强大的移动系统,例如 jQuery Mobile 或 Sencha 以及具有 PhoneGap 的出色移动应用程序。

详细了解移动应用和网站开发

单页应用程序

ASP.NET 单页应用程序 (SPA) 可帮助构建使用 HTML 5、CSS 3 和 JavaScript 进行重要的客户端交互的应用程序。 Visual Studio 包含一个模板,用于使用knockout.js和 ASP.NET Web API生成单页应用程序。 除了内置的 SPA 模板,社区创建的 SPA 模板也可供下载。

详细了解单页应用开发

WebHook

WebHook 是一种轻型 HTTP 模式,提供简单的发布/子模型,用于将 Web API 和 SaaS 服务连接在一起。 当服务中发生事件时,会以 HTTP POST 请求的形式向已注册的订阅者发送通知。 POST 请求包含有关事件的信息,使接收方能够相应地采取行动。

WebHook 由大量服务公开,包括 Dropbox、GitHub、Instagram、MailChimp、PayPal、Slack、Trello 等。 例如,WebHook 可以指示文件已在 Dropbox 中更改,或者已在 GitHub 中提交代码更改,或在 PayPal 中启动付款,或在 Trello 中创建卡。

详细了解 WebHook