Я пришел из webpages asp.net 2.0; где я просто определяю свое меню в Web.sitemap со всеми исправлениями.Меню приложения с обрезкой безопасности
Есть ли эквивалентная функция в asp.net-core-mvc для этой, казалось бы, легкой задачи?
Я пришел из webpages asp.net 2.0; где я просто определяю свое меню в Web.sitemap со всеми исправлениями.Меню приложения с обрезкой безопасности
Есть ли эквивалентная функция в asp.net-core-mvc для этой, казалось бы, легкой задачи?
Вы можете создать собственный TagHelper для него, внутри этого тега помощника вы можете проверить, является ли пользователь в apporperiate роли или нет:
public class SecurityTrimmingTagHelper : TagHelper
{
[ViewContext]
public ViewContext Context { get; set; }
public override void Process(TagHelperContext context, TagHelperOutput output)
{
output.TagName = null;
if (!Context.HttpContext.User.Identity.IsAuthenticated)
{
output.SuppressOutput();
}
if (Context.HttpContext.User.IsInRole("Admin"))
{
return;
}
output.SuppressOutput();
}
}
Привет, Sirwan ... Я помещаю это в представление, содержащее меню? Я новичок в mvc ... –
@KMFong Вы должны поместить разметку меню внутри этого настраиваемого тега, например: '<защита-обрезка> Этот контент будет отображаться на основе текущего разрешения пользователя security-trimming> ' –
Вы можете создать собственный TagHelper для него. –
Сирван ... Я не понимаю этого ... Любой сайт/образцы на этом? –