当前位置:首页 > C# > 正文

ASP.NET Core视图与Razor语法详解(C# Web开发入门指南)

在现代Web开发中,ASP.NET Core视图Razor语法是构建动态网页的核心技术。无论你是刚接触C# Web开发的新手,还是希望系统梳理相关知识的开发者,本文都将带你从零开始,深入浅出地掌握这些关键技术。

ASP.NET Core视图与Razor语法详解(C# Web开发入门指南) Core视图 Razor语法 C# Web开发 动态网页生成 第1张

什么是Razor语法?

Razor 是一种标记语法,它允许你在 HTML 中嵌入 C# 代码。这种语法简洁、直观,让开发者可以轻松创建动态内容。Razor 文件通常以 .cshtml 为扩展名,用于 ASP.NET Core 应用中的视图(View)。

创建第一个Razor视图

假设你已经创建了一个 ASP.NET Core MVC 项目。在 Views/Home 文件夹中,你会看到类似 Index.cshtml 的文件。这就是一个典型的 Razor 视图。

下面是一个简单的 Razor 视图示例:

<@page><h2>欢迎来到我的网站!</h2><p>当前时间是:@DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")</p>@{    var message = "你好,Razor!";}<p>@message</p>

在这个例子中,我们使用了 @ 符号来嵌入 C# 表达式或代码块。这是 Razor语法最核心的特征之一。

Razor语法基础规则

  • @变量名:直接输出变量值。
  • @{ ... }:执行多行 C# 代码块。
  • @if / @for / @foreach:控制流语句可直接写在 HTML 中。
  • @model 类型名:指定当前视图使用的模型类型。

使用模型传递数据到视图

在实际开发中,我们通常会从控制器传递数据到视图。这通过“模型(Model)”实现。

首先定义一个模型类:

public class Product{    public int Id { get; set; }    public string Name { get; set; }    public decimal Price { get; set; }}

然后在控制器中传递模型:

public IActionResult Index(){    var product = new Product    {        Id = 1,        Name = "笔记本电脑",        Price = 5999.99m    };    return View(product);}

最后在视图中使用模型:

@model Product<h2>产品详情</h2><p>ID: @Model.Id</p><p>名称: @Model.Name</p><p>价格: @Model.Price.ToString("C")</p>

注意开头的 @model Product 声明了当前视图所使用的模型类型。这样你就可以通过 @Model 访问属性。

循环与条件判断示例

Razor 支持完整的 C# 控制结构。例如,遍历产品列表:

@model List<Product><h2>产品列表</h2><ul>@foreach (var item in Model){    <li>@item.Name - @item.Price.ToString("C")</li>}</ul>@if (Model.Count == 0){    <p>暂无产品信息。</p>}

总结

通过本文,你已经掌握了 ASP.NET Core视图Razor语法 的基本用法。这些知识是进行 C# Web开发 和实现 动态网页生成 的基础。随着练习的深入,你将能构建功能更丰富、交互性更强的 Web 应用。

建议你动手创建一个小型项目,尝试使用模型、循环和条件语句,加深对 Razor 的理解。祝你在 ASP.NET Core 开发之旅中一路顺风!