.net core 3.x 中的ViewComponent使用方式

本文介绍了如何在.NET Core 3.x MVC项目中创建和使用ViewComponent。通过CounterViewComponent的例子展示了如何定义一个ViewComponent,以及如何在Index视图中调用并显示组件。实验结果成功地显示了ViewComponent的计数功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ViewComponent 基础

创建一个.NetCore 3.x的MVC项目

。。。

实验目的

在这里插入图片描述

开始实验

创建 ViewComponents

创建 CounterViewComponent.cs

CounterViewComponent.cs内容如下

public class CounterViewComponent:ViewComponent
{
    public static int i = 0;
    private readonly ILogger<HomeController> _logger;
    public CounterViewComponent(ILogger<HomeController> logger)
    {
        _logger = logger;
    }
    public async Task<IViewComponentResult> InvokeAsync()
    {
        var controller = RouteData.Values["controller"].ToString();
        var action = RouteData.Values["action"].ToString();
        if (!string.IsNullOrWhiteSpace(controller) && !string.IsNullOrWhiteSpace(action))
        {
            var pageId = $"{controller}-{action}";
            i = i++;
            return View("Default", pageId +": "+ i);
        }
        throw new  Exception("Cannot get pageId");
    }
}

Views文件夹创建下列对应文档与路径
在这里插入图片描述
HomeController中的Index视图上添加如下代码
在这之前我把layer给去掉了

<h1>@await Component.InvokeAsync("Counter")</h1>

实验结果

结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值