【问题标题】:Share a View between ComponentViews在 ComponentViews 之间共享一个 View
【发布时间】:2021-07-20 17:40:42
【问题描述】:

我想知道是否有任何方法可以在 ComponetView 之间共享视图。 我喜欢在一些 ComponetViews 之间共享菜单,我尝试将其共享为 PartalView,但似乎不可能。

【问题讨论】:

    标签: asp.net-core model-view-controller razor-pages


    【解决方案1】:

    部分视图可以在视图组件之间共享。

    您可以查看此演示:

    两个视图组件:

    @model IEnumerable<ViewComponentSample.Models.TodoItem
    <h3>First View Component</h3>   
    @await Html.PartialAsync("/Views/Shared/_partial.cshtml")  //partial here
    

    部分观点:

    @{
    List<ViewCompFinal.Models.Menu> menulist = new List<ViewCompFinal.Models.Menu>
    {
        new ViewCompFinal.Models.Menu{ Name="Beer"},
        new ViewCompFinal.Models.Menu{ Name="Beef"}
    }; 
    }
    
    @foreach (var item in menulist)
    {
         @item.Name<br/>
    }
    

    结果:

    您可以在此处查看如何使用局部视图和 viewComponent:

    partial view

    view component

    【讨论】:

    • 非常感谢,我尝试分享部分视图,但我收到错误消息,说它找不到视图,但视图在那里可能我在路径中犯了错误,它应该在哪里是?组件位于 Views/Shared 文件夹中,但它们应该在哪里找到局部视图?位置有什么规定吗?
    • @PariaShiri 我把部分放在共享文件夹中,你可以检查tutorial 中的规则,如果你仍然有问题,也许你应该分享你的代码,以便我可以重现它。跨度>
    猜你喜欢
    • 1970-01-01
    • 2014-01-08
    • 2014-05-06
    • 1970-01-01
    • 2014-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-30
    相关资源
    最近更新 更多