gpt4 book ai didi

asp.net-mvc - 如何在 ASP.Net MVC 3 中选择性地呈现一个部分?

转载 作者:行者123 更新时间:2023-12-04 00:48:07 26 4
gpt4 key购买 nike

在我的网站上,我有一个部分(一个 float 侧边栏),我只想为一部分用户(管理员)呈现。我希望我可以将逻辑放在主布局中以确定是否应显示该部分,但如果该部分未呈现,则会导致页面上出现错误。

示例代码 - Layout.cshtml...

... code ...
@if(user.IsAdmin) {
@RenderSection("AdminSidebar", false)
}

示例代码 - MyPage.cshtml...
@section AdminSidebar {
... code ...
}

有人知道如何在不必将逻辑放在所有子页面中的情况下使其工作吗?

请注意, IsSectionDefined("AdminSidebar") 仅适用于布局文件。在页面中无法测试该部分是否可用。

最佳答案

我不知道这是否不是在滥用框架,但如果您真的倾向于那样做,您可以尝试以下操作:

@{
if(user.IsAdmin) {
@RenderSection("AdminSidebar", false)
}
else {
RenderSection("AdminSidebar", false).WriteTo(TextWriter.Null);
}
}

关于asp.net-mvc - 如何在 ASP.Net MVC 3 中选择性地呈现一个部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8040453/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com