杰瑞科技汇

ASP.NET入门教程该怎么学?

ASP.NET 入门教程:从零开始构建你的第一个网站

第一部分:ASP.NET 是什么?

在开始编码之前,我们先要理解 ASP.NET 是什么。

ASP.NET入门教程该怎么学?-图1
(图片来源网络,侵删)

想象一下,你想开一家餐厅:

  • HTML:是餐厅的装修和桌椅,是顾客能看到和触摸到的静态内容。
  • CSS:是桌椅的颜色、墙上的画,让餐厅看起来更美观。
  • JavaScript:是餐厅里的服务员,可以和顾客互动,比如点餐时弹出确认框。

光有这些是不够的,你需要一个厨房,根据顾客的点单(请求)来烹饪菜品(处理数据),然后上菜(响应),这个厨房就是 后端服务器

ASP.NET 就是这个厨房的现代化、高效的建造工具。

官方定义: ASP.NET 是一个由微软开发的、用于构建 Web 应用程序的免费开源框架,它运行在 Windows 服务器上,使用 C# 或 VB.NET 等编程语言,让你能够快速、轻松地创建动态的、数据驱动的网站和 Web 服务。

ASP.NET入门教程该怎么学?-图2
(图片来源网络,侵删)

核心特点:

  1. 跨平台:现代的 ASP.NET Core 可以在 Windows, Linux, macOS 上运行。
  2. 高性能:在所有主流 Web 框架中名列前茅。
  3. 开源:拥有活跃的社区,持续更新和改进。
  4. 易于学习:特别是对于有 C# 基础的开发者。
  5. 安全性高:内置了许多安全功能,帮助你防范常见的网络攻击。

第二部分:准备工作

你需要安装以下软件:

  1. Visual Studio 2025 (Community 版免费)

    • 这是微软官方的集成开发环境,是开发 ASP.NET 应用的最佳工具。
    • 下载地址https://visualstudio.microsoft.com/zh-hans/vs/community/
    • 安装时务必勾选.NET 桌面开发ASP.NET 和 Web 开发 工作负载,这会自动安装 .NET SDK 和必要的开发工具。
  2. .NET 6 SDK 或更高版本

    ASP.NET入门教程该怎么学?-图3
    (图片来源网络,侵删)

    SDK (Software Development Kit) 是编译和运行 .NET 应用程序所必需的,Visual Studio 安装程序通常会帮你安装好。


第三部分:创建你的第一个 ASP.NET Core 项目

让我们动手创建项目。

  1. 打开 Visual Studio 2025

  2. 点击 “创建新项目” (Create a new project)。

  3. 在模板搜索框中输入 ASP.NET Core Web App,选择它,然后点击 “下一步”

  4. 配置你的新项目

    • 项目名称:给项目起个名字,MyFirstWebApp
    • 位置:选择一个你喜欢的文件夹来存放项目。
    • 点击 “创建”
  5. 选择其他信息

    • 框架:选择最新的 .NET 8.0 (或 .NET 7.0/6.0)。
    • 模板:选择 “空” (Empty) 模板,这能让我们从最简单的结构开始,更好地理解底层原理。
    • 不要勾选 “使用控制器...” (Use controllers...),因为我们先学习最基础的 Razor Pages。
    • 点击 “创建”

恭喜!你成功创建了一个 ASP.NET Core 项目。


第四部分:项目结构解析

创建好项目后,我们来认识一下主要的文件和文件夹。

  • MyFirstWebApp.csproj:项目文件,定义了项目的基本信息、引用的包等。
  • Program.cs应用程序的入口点,非常关键!
  • Properties/launchSettings.json:启动配置文件,定义了如何运行你的应用(比如使用 IIS 还是 Kestrel,启动的 URL 等)。
  • wwwroot/静态文件根目录,所有 CSS, JavaScript, 图片等不需要服务器处理的文件都放在这里。
  • Pages/存放 Razor Pages 的目录,这是我们项目的核心。

第五部分:核心概念与实战

理解请求-响应模型

Web 的工作本质就是:客户端发送请求 -> 服务器处理 -> 服务器返回响应

在浏览器地址栏输入 https://localhost:xxxx/ 并回车,你就发送了一个 HTTP GET 请求 到你的服务器,服务器收到后,会返回一个 HTML 响应,浏览器将其渲染成页面。

编写你的第一个页面

默认情况下,访问根路径 会返回一个 404 错误,因为我们还没有创建任何页面,让我们来创建一个首页。

  1. Pages 文件夹上右键 -> 添加 -> 新建项...
  2. 选择 “Razor Page - Empty”,命名为 Index.cshtml,然后点击 “添加”

你得到了两个文件:

  • Index.cshtml:视图文件,包含 HTML 和 C# 代码。
  • Index.cshtml.cs:后台代码文件(也叫 Page Model),用于处理逻辑。

修改页面内容

打开 Pages/Index.cshtml,把里面的内容替换成:

@page // 这个指令告诉这个文件是一个可以直接访问的页面,而不是一个被其他页面包含的组件
@model MyFirstWebApp.Pages.IndexModel
@{
    ViewData["Title"] = "首页";
}
<div class="text-center">
    <h1 class="display-4">欢迎来到 ASP.NET Core!</h1>
    <p>这是我的第一个网页。</p>
</div>

代码解释:

  • @page:Razor Page 的核心指令,使该文件可以直接通过 URL 访问。
  • @model ...:将这个页面与 Index.cshtml.cs 中的代码类关联起来。
  • Razor 代码块,用于执行 C# 代码。
  • ViewData["Title"] = "首页";:设置页面的标题,通常在 _Layout.cshtml 中被使用。

F5 运行你的项目,浏览器会自动打开并显示你刚刚创建的页面!

添加动态内容(C# 逻辑)

静态页面没什么意思,让我们让它动起来。

打开 Pages/Index.cshtml.cs 文件,修改如下:

using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
namespace MyFirstWebApp.Pages
{
    public class IndexModel : PageModel // 必须继承 PageModel
    {
        private readonly ILogger<IndexModel> _logger;
        // 构造函数,依赖注入日志服务
        public IndexModel(ILogger<IndexModel> logger)
        {
            _logger = logger;
        }
        // 这是一个属性,用于在页面上显示当前时间
        public string CurrentTime { get; private set; }
        // 当页面被请求时,这个方法会被自动执行
        public void OnGet()
        {
            // 设置属性的值
            CurrentTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
        }
    }
}

代码解释:

  • public class IndexModel : PageModel:每个 Razor Page 都需要一个对应的 C# 类,并且继承自 PageModel
  • OnGet():这是一个 页面处理方法,当页面通过 GET 请求(直接在浏览器访问)时,这个方法会被自动执行,你还可以创建 OnPost() 方法来处理 POST 请求(如表单提交)。
  • public string CurrentTime { get; private set; }:这是一个公共属性,在 OnGet() 中给它赋值后,我们就可以在对应的 .cshtml 视图中使用它。

回到 Pages/Index.cshtml,修改 <h1> 标签下方的 <p>

<p>当前时间是:@Model.CurrentTime</p>

代码解释:

  • @Model:通过 @model 指令关联的 C# 类的实例,我们可以通过 @Model.属性名 来访问 IndexModel 类中定义的公共属性。

再次运行项目(F5),你会看到页面中显示了当前的实时时间!这就是动态内容的魅力。


第六部分:进阶学习路径

恭喜你,你已经掌握了 ASP.NET Core 的最基本概念!接下来你可以按照以下路径继续深入学习:

  1. 学习 Razor Pages 的高级用法

    • 表单处理:创建表单,使用 OnPost() 方法接收用户输入。
    • 模型绑定:让框架自动将 HTTP 请求数据绑定到你的 C# 类属性上。
    • 数据验证:使用 Data Annotations 为你的模型添加验证规则(如必填、邮箱格式等)。
  2. 学习 Entity Framework Core (EF Core)

    • 这是微软官方的 ORM(对象关系映射)工具。
    • 学习如何连接数据库,并使用 C# 代码来增、删、改、查数据库中的数据,而不用写 SQL 语句,这是构建数据驱动应用的核心。
  3. 学习 MVC 架构模式

    Razor Pages 是一种简单高效的模型,但 MVC (Model-View-Controller) 是更传统、更强大的架构模式,被广泛应用于大型项目中,理解 MVC 会让你对 Web 应用架构有更深的认识。

  4. 学习身份认证与授权

    学习如何实现用户注册、登录,以及如何控制不同用户对不同页面的访问权限。


第七部分:学习资源推荐

  • 微软官方文档 (首选)https://learn.microsoft.com/zh-cn/aspnet/core/ - 最权威、最全面、最新的学习资料。
  • ASP.NET Core 中文文档https://github.com/dotnet/doc-zh-cn - 社区维护的中文文档,非常棒。
  • 视频教程
    • Bilibili:搜索“ASP.NET Core 入门”、“B站官方-微软技术”等,有大量优秀的免费教程。
    • YouTube:搜索 "ASP.NET Core Tutorial",有很多英文高质量教程。
  • 社区
    • Stack Overflow:遇到问题,先在这里搜索。
    • GitHub:阅读优秀开源项目的源码。

ASP.NET 是一个功能强大且现代的框架,非常适合构建各种类型的 Web 应用,从创建第一个页面开始,逐步学习处理请求、响应数据、连接数据库,你将能够构建出复杂的、专业的网站。

祝你学习愉快!

分享:
扫描分享到社交APP
上一篇
下一篇