杰瑞科技汇

ASP.NET网站开发教程从哪开始学?

ASP.NET 网站开发全攻略

本教程将分为以下几个核心部分:

ASP.NET网站开发教程从哪开始学?-图1
(图片来源网络,侵删)
  1. 第一步:准备工作与环境搭建
  2. 第二步:选择你的 ASP.NET 框架
  3. 第三步:创建你的第一个 ASP.NET 项目
  4. 第四步:核心概念详解
  5. 第五步:进阶主题
  6. 第六步:部署与发布
  7. 学习资源与最佳实践

第一步:准备工作与环境搭建

在开始编码之前,你需要准备好开发工具和运行环境。

安装 Visual Studio

Visual Studio 是微软官方提供的集成开发环境,是开发 ASP.NET 应用的首选工具,它提供了强大的代码编辑、调试、界面设计等功能。

  • 下载地址: Visual Studio 官网

  • 版本选择:

    ASP.NET网站开发教程从哪开始学?-图2
    (图片来源网络,侵删)
    • Visual Studio Community (社区版): 免费,功能强大,适合个人开发者、开源项目和小型团队。推荐初学者使用
    • Visual Studio Professional (专业版): 付费,提供更多企业级功能。
    • Visual Studio Enterprise (企业版): 付费,功能最全。
  • 安装时的工作负载: 安装 Visual Studio 时,请务必勾选以下“工作负载”以确保安装了所需的组件:

    • ASP.NET 和 Web 开发: 这是核心,包含了开发 Web 应用所需的一切。
    • .NET 桌面开发: 如果你同时想开发 Windows 应用程序。
    • Azure 开发: 如果你计划将应用部署到微软云。

了解 .NET 运行时

你的 ASP.NET 应用需要一个运行环境来执行代码,这就是 .NET 运行时。

  • .NET 6 / .NET 7 / .NET 8: 这是目前最新的“长期支持”版本,它们是统一的、现代化的框架,性能优异,推荐所有新项目使用。
  • .NET Framework: 这是传统的框架,主要用于维护旧的 Windows 应用程序,对于新网站,除非有特殊依赖(如 Windows Server 上的 COM 组件),否则不推荐使用。

注意: 安装 Visual Studio 时,通常会自动为你安装最新的 .NET SDK(软件开发工具包),其中包含了编译器和运行时,你不需要单独下载。


第二步:选择你的 ASP.NET 框架

ASP.NET 不是一个单一的技术,而是一个技术家族,对于网站开发,主要有两个现代选择:

ASP.NET网站开发教程从哪开始学?-图3
(图片来源网络,侵删)
特性 ASP.NET Core MVC ASP.NET Core Razor Pages
架构模式 经典的 MVC (Model-View-Controller) 模式,更灵活,适合构建复杂的、大型的应用程序。 更简化的、基于页面的模式,没有控制器,直接在页面模型中处理逻辑。
学习曲线 稍高,需要理解 M、V、C 的职责分离。 非常平缓,对初学者极其友好,上手快。
适用场景 大型网站、API 服务、需要高度可测试性和灵活性的项目。 小型到中型的网站、快速原型开发、内容管理系统、表单密集型应用。
推荐度 行业标准,是构建复杂应用的首选。 强烈推荐给初学者,是学习 ASP.NET Core 的最佳起点。

给你的建议:

  • 如果你是初学者: 请直接选择 ASP.NET Core Razor Pages,它能让你专注于构建功能,而不用被复杂的架构概念分心。
  • 如果你有一定基础,或想构建大型应用: 学习 ASP.NET Core MVC

第三步:创建你的第一个 ASP.NET 项目

让我们动手创建一个项目。

  1. 打开 Visual Studio。
  2. 点击“创建新项目”。
  3. 在模板搜索框中输入 Razor PagesMVC,然后选择对应的模板,选择 “ASP.NET Core Web 应用” 模板,然后点击“下一步”。
  4. 配置新项目:
    • 项目名称: 给你的项目起一个名字,MyFirstWebApp
    • 位置: 选择项目存放的文件夹。
    • 解决方案名称: 通常与项目名相同。
  5. 其他信息:
    • 框架: 选择 .NET 8.0 (或你安装的最新 LTS 版本)。
    • 其他信息:
      • 不使用顶级语句: 这是一个选项,保持默认即可。
      • 身份验证: 选择“无”。
      • 配置 HTTPS: 保持默认勾选,这是一个好习惯。
      • Razor: 保持默认勾选。
  6. 点击“创建”。

Visual Studio 会为你生成一个完整的项目结构,并包含一些示例代码。

  1. 运行项目:
    • 按下 F5 键,或者点击工具栏上的绿色“播放”按钮。
    • Visual Studio 会启动一个内置的 Web 服务器(IIS Express),并在你的默认浏览器中打开网站,你应该能看到一个欢迎页面,恭喜你,你的第一个 ASP.NET 网站已经成功运行了!

第四步:核心概念详解

无论你选择 MVC 还是 Razor Pages,以下核心概念都是通用的。

项目结构

当你创建好项目后,会看到以下关键文件夹:

  • wwwroot: 存放所有静态文件,如 CSS 样式表、JavaScript 文件、图片、字体等,浏览器可以直接访问这些文件。
  • Pages (Razor Pages) / Controllers (MVC): 这是存放你业务逻辑的核心地方。
    • Razor Pages: 每个页面都是一个 .cshtml 文件,对应一个 .cshtml.cs 的“页面模型”文件。.cshtml 文件混合了 HTML 和 C# 代码(Razor 语法),.cshtml.cs 文件则包含处理该页面请求的 C# 方法。
    • MVC: Controllers 文件夹存放控制器类,它们负责接收用户请求,处理逻辑,并返回视图。
  • Models: 存放数据模型类,用于定义你的应用数据结构。
  • Views (MVC) / Shared: 存放显示给用户的 HTML 模板(视图)。_Layout.cshtml 是一个非常重要的布局文件,它定义了网站的公共结构(如 <head>, <header>, <footer> 等)。
  • appsettings.json: 应用的配置文件,用于存储数据库连接字符串、API 密钥等配置信息。
  • Program.cs: 应用的入口点,在这里配置服务(如数据库、日志)和请求管道。

Razor 语法

Razor 是一种允许你在 HTML 页面中嵌入 C# 代码的标记语法。

  • 符号: 用于从 C# 代码切换到 HTML 标记。

    <h1>@DateTime.Now.ToString("yyyy-MM-dd")</h1>
  • 用于编写多行 C# 代码块。

    @{
        var user = "张三";
        var isAdmin = true;
    }
    <p>欢迎, @user!</p>
    @if (isAdmin)
    {
        <p>您是管理员。</p>
    }
  • @model (Razor Pages) / @model (MVC View): 用于指定当前页面或视图所使用的数据模型。

    // 在 PageModel 或 Controller 中
    public class IndexModel : PageModel
    {
        public string Message { get; set; }
        public void OnGet()
        {
            Message = "你好,世界!";
        }
    }
    // 在对应的 .cshtml 文件中
    @page
    @model MyFirstWebApp.Pages.IndexModel
    @{
        ViewData["Title"] = "首页";
    }
    <h1>@Model.Message</h1>

数据库交互

现代网站几乎都离不开数据库,在 ASP.NET 中,最推荐的方式是使用 Entity Framework Core (EF Core)

  • 什么是 EF Core? 它是一个对象关系映射器,让你可以用 C# 对象(模型类)来操作数据库,而不用手写复杂的 SQL 语句。

  • 工作流程:

    1. 定义模型: 创建一个 C# 类来表示数据库表。

      public class Product
      {
          public int Id { get; set; }
          public string Name { get; set; }
          public decimal Price { get; set; }
      }
    2. 创建 DbContext: 这是 EF Core 的核心,它负责与数据库进行交互。

      public class AppDbContext : DbContext
      {
          public AppDbContext(DbContextOptions<AppDbContext> options) : base(options) { }
          public DbSet<Product> Products { get; set; }
      }
    3. 注册 DbContext: 在 Program.cs 中将 AppDbContext 注册为服务。

      builder.Services.AddDbContext<AppDbContext>(options =>
          options.UseSqlServer(builder.Configuration.GetConnectionString("DefaultConnection")));
    4. 依赖注入: 在你的页面或控制器中,通过构造函数将 AppDbContext 注入进来,然后就可以使用它来查询、添加、修改、删除数据了。


第五步:进阶主题

当你掌握了基础后,可以学习这些让网站功能更强大的技术。

  1. 身份验证与授权

    • 身份验证: 确认“你是谁”,ASP.NET Core 内置了多种身份验证方案,最常用的是 ASP.NET Core Identity,它提供了用户注册、登录、密码找回、双因素认证等功能。
    • 授权: 确认“你能做什么”,只有登录的管理员才能访问某个页面。
  2. API 开发

    使用 ASP.NET Core 可以轻松构建 RESTful API,你不需要返回 HTML,而是返回 JSON 数据,供前端 JavaScript (如 Vue, React) 或其他客户端调用。

  3. 依赖注入

    这是 ASP.NET Core 的核心设计原则,它负责创建和管理对象(服务),并将它们“注入”到需要它们的地方,这使得代码更容易测试和维护。

  4. 日志记录

    使用内置的日志系统记录应用运行时的信息、警告和错误,方便排查问题。

  5. 测试

    学习使用 xUnit 或 NUnit 等测试框架为你的代码编写单元测试和集成测试,确保代码质量。


第六步:部署与发布

开发完成后,你需要将网站部署到服务器上,让用户可以访问。

  1. 发布项目:

    • 在 Visual Studio 中,右键点击你的项目,选择“发布”。
    • 选择目标,如 “文件夹”“Azure App Service”“IIS、FTP/S 等服务器”
    • Visual Studio 会编译你的项目,并将所有必要的文件(包括 DLL、配置文件、静态文件)输出到一个指定文件夹。
  2. 选择部署平台:

    • Azure App Service (推荐): 微软提供的云平台,有免费套餐,可以一键部署,自动扩展,非常适合初学者和中小型项目。
    • 虚拟机: 在自己的或租用的云服务器(如阿里云、腾讯云、AWS)上安装 Windows Server 和 IIS,然后通过 FTP 或 Web Deploy 发布你的网站。
    • 容器化: 使用 Docker 将你的应用打包成容器,然后部署到 Kubernetes 或 Azure App Service 的容器环境中。

第七步:学习资源与最佳实践

官方文档 (最重要的资源)

视频教程

  • Bilibili: 搜索“ASP.NET Core 入门”、“.5 一小时学会”等关键词,有很多优秀的中文教程。
  • YouTube: Channel 9 (微软官方)、Fireship、Traversy Media 等频道有大量高质量的英文教程。

最佳实践

  • 遵循 MVC/Razor Pages 模式: 保持关注点分离,不要在视图里写复杂的业务逻辑。
  • 使用依赖注入: 尽可能多地使用 DI,避免使用 new 关键字硬编码对象创建。
  • 启用 HTTPS: 在开发和生产环境中都使用 HTTPS。
  • 不要信任用户输入: 始终对来自用户的输入进行验证和清理,防止 SQL 注入、跨站脚本等安全漏洞。
  • 使用异步编程: 在处理 I/O 操作(如数据库查询、网络请求)时,使用 asyncawait,以提高应用的并发性能。
  • 版本控制: 使用 Git (通过 GitHub 或 Azure DevOps) 来管理你的代码。

希望这份详细的指南能帮助你顺利开启 ASP.NET 网站开发之旅!祝你编码愉快!

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