为了账号安全,请及时绑定邮箱和手机立即绑定

使用 Razor Pages 在 Asp.NET Core 2.2 中找不到

使用 Razor Pages 在 Asp.NET Core 2.2 中找不到

C#
一只斗牛犬 2023-09-16 15:54:39
我创建了一个非常简单的视图组件(/ViewComponents/MenuViewComponent.cs):namespace MySite.ViewComponents{        public class MenuViewComponent : ViewComponent    {        public Task<IViewComponentResult> InvokeAsync()        {            return Task.FromResult((IViewComponentResult)View("Default"));        }    }}视图部分在这里(/Pages/Components/Menu/Default.cshtml):<div>Menu</div>我从文件中调用菜单,_Layout.cshtml如下所示:@await Component.InvokeAsync("MenuViewComponent");查看页面时,我收到以下错误消息:InvalidOperationException: A view component named 'MenuViewComponent' could not be found.A view component must be a public non-abstract class, not contain any generic parameters, and either be decorated with 'ViewComponentAttribute' or have a class name ending with the 'ViewComponent' suffix. A view component must not be decorated with 'NonViewComponentAttribute'.问题:为了让它正常工作,我缺少什么?
查看完整描述

1 回答

?
繁华开满天机

TA贡献1816条经验 获得超4个赞

确保组件视图位于搜索路径中,

并且在调用组件时只需使用不带后缀的名称

@await Component.InvokeAsync("Menu")


查看完整回答
反对 回复 2023-09-16
  • 1 回答
  • 0 关注
  • 62 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信