gpt4 book ai didi

asp.net - 使用 <% %> 或等效项仅向管理员(没有其他人)显示 .ascx 模板 HTML 的一部分

转载 作者:行者123 更新时间:2023-12-02 14:25:21 24 4
gpt4 key购买 nike

我正在客户的 DotNetNuke 网站上进行远程工作,扩展现有的 HTML 模板。客户要求必须隐藏这些新内容,直到他们审阅为止。

有没有办法可以隐藏模板的 HTML 部分并仅向管理员显示?

我理想地寻找这样的东西:

<div>
<% Admin Only %>
<p>Only administrators can see this!</p>
<% End Admin Only %>
<p>Everyone can see this</p>
</div>

(我对 ASP.NET 不太熟悉,所以我不确定 <% %> 表示法叫什么。)

这可能吗?

最佳答案

创建一个方法并使用 ASP.NET 内联表达式调用该方法,如下所示。

IF语言是VB

<script runat="server">
Public Function IsUserAdmin() As Boolean
Dim uinfo As DotNetNuke.Entities.Users.UserInfo = DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo()
If uinfo.UserID <> -1 Then
If uinfo.IsInRole(DotNetNuke.Entities.Portals.PortalSettings.Current.AdministratorRoleName) Then
Return True
Else
Return False
End If
Else
Return False
End If

End Function
</script>

而 ASP.NET 内联表达式是

<%  If IsUserAdmin() Then%>
<p>Only administrators can see this!</p>
<% End If%>

如果语言是C#

<script runat="server">
public bool IsUserAdmin()
{
DotNetNuke.Entities.Users.UserInfo uinfo = DotNetNuke.Entities.Users.UserController.GetCurrentUserInfo();
if (uinfo.UserID != -1)
{
if (uinfo.IsInRole(DotNetNuke.Entities.Portals.PortalSettings.Current.AdministratorRoleName))
return true;
else
return false;
}
else
{
return false;
}

}
</script>

而 ASP.NET 内联表达式是

<% if (IsUserAdmin()) %>
<%
{ %>
<p>Only administrators can see this!</p>
<% } %>

关于asp.net - 使用 <% %> 或等效项仅向管理员(没有其他人)显示 .ascx 模板 HTML 的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15945965/

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