如何在 C# asp.net 的另一个页面中更改站点地图中 url 的默认重定向页面
how to change the default redirect page of a url in sitemap in another page in C# asp.net
我有两个主页,分别针对用户和管理员。对于用户是 Default.aspx,对于管理员是 AdminDefault.aspx。在我的 Site.Master 页面中,它包含主页的默认 url 和其他默认页面,如下所示,
<ul id="menu">
<li><a runat="server" id="home" href="~/">Home</a></li>
<li><a runat="server" href="~/About.aspx">About</a></li>
<li><a runat="server" href="~/Contact.aspx">Contact</a></li>
</ul>
当管理员登录时,管理员重定向到默认主页
假设你有如下函数判断一个用户是否是administrator组的成员
bool IsInGroup(string user, string group)
{
using (var identity = new WindowsIdentity(user))
{
var principal = new WindowsPrincipal(identity);
return principal.IsInRole(group);
}
}
然后在 IF 语句之后重定向是一件简单的事情,如下所示:
if(IsInGroup(User.Name, "Administrators")
return RedirectToAction("AdminDefault.aspx");
(请注意,上面的代码示例是根据记忆编写的,可能并不准确。事实上,它可能不是)
Check Role Using session and provide condition like this
string Role="";
on Login button click event check the role
YourLoginMethod()
{
// Your Login Code and after check
//Pass Role in string above or Use session
if(Role=="admin")
{
Response.Redirect("~/Admin.aspx");
}
else{
Response.Redirect("~/Index.aspx");
}
}
我有两个主页,分别针对用户和管理员。对于用户是 Default.aspx,对于管理员是 AdminDefault.aspx。在我的 Site.Master 页面中,它包含主页的默认 url 和其他默认页面,如下所示,
<ul id="menu">
<li><a runat="server" id="home" href="~/">Home</a></li>
<li><a runat="server" href="~/About.aspx">About</a></li>
<li><a runat="server" href="~/Contact.aspx">Contact</a></li>
</ul>
当管理员登录时,管理员重定向到默认主页
假设你有如下函数判断一个用户是否是administrator组的成员
bool IsInGroup(string user, string group)
{
using (var identity = new WindowsIdentity(user))
{
var principal = new WindowsPrincipal(identity);
return principal.IsInRole(group);
}
}
然后在 IF 语句之后重定向是一件简单的事情,如下所示:
if(IsInGroup(User.Name, "Administrators")
return RedirectToAction("AdminDefault.aspx");
(请注意,上面的代码示例是根据记忆编写的,可能并不准确。事实上,它可能不是)
Check Role Using session and provide condition like this
string Role="";
on Login button click event check the role
YourLoginMethod()
{
// Your Login Code and after check
//Pass Role in string above or Use session
if(Role=="admin")
{
Response.Redirect("~/Admin.aspx");
}
else{
Response.Redirect("~/Index.aspx");
}
}