Blazor简单教程(1.1):Razor基础语法

前言

Blazor最重要的是Razor组件和cshtml页面。两个最大的区别就是cshtml是完整的html,Razor是不完整的html

微软Razor 语法官方文档

我的Blazor基础语法个人总结

C# Blazor 学习笔记(12):css样式设置

C#小轮子:Visual Studio自动编译Sass文件

基本文件配置

在这里插入图片描述

  • Components:组件
  • Controller:控制器/API
  • Layout:布局
  • Models:实体对象
  • Pages:页面
  • Service:服务/数据库查询
  • Utils:通用工具

引入Layout组件

语法介绍

在这里插入图片描述

在这里插入图片描述

@page

路由路径:可以多路由

@page "/index"
//指向/index路径
<h1 class="title">Hello, world!</h1>

@code

  • @code,声明代码空间
    在这里插入图片描述

  • xxx.razor.cs 对应文件
    在这里插入图片描述
    在这里插入图片描述
    Tips:partial class即部分class,编译的时候会组合成一个完整的class

Razor 语法

显式表达和隐式表达

在这里插入图片描述

绑定

简单绑定

<h1>@Title</h1>
<button  @onclick="TitleBtn">按钮点击</button>
<h1>@RangeValue</h1>
@code{
    public string Title { get; set; } = "我是@Code Title字符串";
    /// <summary>
    /// 按钮事件
    /// </summary>
    public void TitleBtn()
    {
        Title = "我被函数改变了!";


    }
}

注意,这里的绑定是单向绑定。不是双向绑定,双向绑定需要用到@Bind语法

双向绑定


<button  @onclick="TitleBtn">按钮点击</button>
<input type="range" min="0" max="10" @bind="RangeValue"/>
<h1>@RangeValue</h1>
@code{

    public decimal RangeValue { get; set; } = 2;
    /// <summary>
    /// 按钮事件
    /// </summary>
    public void TitleBtn()
    {
        RangeValue++;
    }
}

带参数的函数绑定

Blazor 事件处理

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

解决方案

@οnclick=“@(e=>你的函数))”


<h1>@Title</h1>
<button @onclick="@(e=>TitleBtn2("函数2带参数按钮点击"))">带参数按钮点击</button>

@code{
    public string Title { get; set; } = "我是@Code Title字符串";

    public void TitleBtn2(string str)
    {
        Title = str;
    }
}

依赖注入

依赖注入有两种,我们这里统一使用cs的注入方式

        [Inject]
        [NotNull]
        private NavigationManager navigationManager { get; set; }

在这里插入图片描述
Blazor的路由

使用

        public void LoginBtn()
        {
            Console.WriteLine("登录");
            navigationManager.NavigateTo("/index");
        }
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Razor语法是一种用于ASP.NET Web应用程序的视图引擎,允许开发人员通过混合C#代码和HTML标记来创建动态Web页面。以下是Razor语法的详细教程: 1. Razor语法中的代码块用@符号包围,如@{ }。这些代码块可以包含任何C#代码。 2. Razor语法中的表达式用@符号和小括号包围,如@( )。表达式可以是任何C#表达式,并且可以在HTML标记中嵌套使用。 3. Razor语法中的注释用@*和*@包围,如@* 这是一个注释 *@。 4. Razor语法中的条件语句可以使用if、else if和else关键字。例如: ``` @if (condition) { // do something } else if (condition2) { // do something else } else { // do something else } ``` 5. Razor语法中的循环语句可以使用for、foreach和while关键字。例如: ``` @for (int i = 0; i < 10; i++) { <p>@i</p> } @foreach (var item in collection) { <p>@item</p> } @while (condition) { // do something } ``` 6. Razor语法中的HTML标记可以直接嵌套在代码块中,如: ``` @{ var name = "John"; } <h1>Hello, @name!</h1> ``` 7. Razor语法中的HTML标记可以使用@符号和小括号来嵌套表达式,如: ``` <h1>@("Hello, " + name + "!")</h1> ``` 8. Razor语法中的HTML标记可以使用@符号和大括号来嵌套代码块,如: ``` @if (condition) { <p>Some text</p> } ``` 9. Razor语法中的HTML标记可以使用属性,如: ``` <a href="@Url.Action("Index", "Home")">Home</a> ``` 以上就是Razor语法的详细教程,希望能对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值