0
点赞
收藏
分享

微信扫一扫

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

yellowone 2022-02-05 阅读 29

ViewComponent 基础

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

。。。

实验目的

在这里插入图片描述

开始实验

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>

实验结果

结果

举报

相关推荐

0 条评论