我正在使用Dotnetnuke CMS并尝试修改用Razor编写的显示模板。
我有一个div,我想根据用户的角色隐藏/显示。我是Razor和C#的新手,我很难让它工作。
我已经阅读过DNN的UserController,但我不确定这是针对Razor还是ACSX asp.net模板引擎或CSHTML文件?
我的代码如下:
Dim userInfo = UserController.GetCurrentUserInfo()
if (userInfo.IsInRole("Administrators")) {
<div style="background-color:red;">IS ADMIN</div>
}
else if (userInfo.IsInRole("Dealers")) {
<div style="background-color:blue;">IS DEALER</div>
}
End If
答案 0 :(得分:1)
我假设您正在使用模块创建器使用Razor语法构建快速模块。
您的代码示例是C#和VB语法的混合。这是C#中的代码。
@using DotNetNuke.Common;
@using DotNetNuke.Entities.Users;
@{
var userInfo = UserController.Instance.GetCurrentUserInfo();
}
@if (userInfo.IsInRole("Administrators")) {
<div style="background-color:red;">IS ADMIN</div>
}
else if (userInfo.IsInRole("Dealers")) {
<div style="background-color:blue;">IS DEALER</div>
}