ASPX
<asp:Login ID="Login1" runat="server" BackColor="#009933" BorderColor="Red"
BorderPadding="4" BorderStyle="Ridge" BorderWidth="1px" Font-Names="Verdana"
Font-Size="0.8em" ForeColor="Red"
DestinationPageUrl="~/MainPage.aspx" style="text-align: center" Height="171px"
Width="266px" VisibleWhenLoggedIn="True" TextLayout="TextOnTop">
<TextBoxStyle Font-Size="0.8em" />
<LoginButtonStyle BackColor="#FFFBFF" BorderColor="#CCCCCC" BorderStyle="Solid"
BorderWidth="1px" Font-Names="Verdana" Font-Size="0.8em" ForeColor="#284775" />
<InstructionTextStyle Font-Italic="True" ForeColor="Black" />
<TitleTextStyle BackColor="#5D7B9D" Font-Bold="True" Font-Size="0.9em"
ForeColor="White" />
</asp:Login>
VB
Partial Class Login
Inherits System.Web.UI.Page
End Class
员工文件夹的web.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<authorization>
<allow roles="staff" /> <deny users="" />
</authorization>
</system.web>
</configuration>
admin 文件夹的web.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<authorization>
<allow roles="adminstrator" /> <deny users="" />
</authorization>
</system.web>
</configuration>
web.config - root
<configuration>
<appSettings/>
<connectionStrings>
<add name="ConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\ASPNETDB.MDF;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient"/>
<add name="ASPNETDBConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Se7en\Desktop\Personal\VIVA\1\App_Data\ASPNETDB.MDF;Integrated Security=True;Connect Timeout=30;User Instance=True" providerName="System.Data.SqlClient"/>
</connectionStrings>
答案 0 :(得分:0)
您可以在登录按钮点击事件中执行此操作:
switch (role)
{
case 0:
Response.Redirect("MainPage.aspx");
break;
case 1:
Response.Redirect("StaffPage.aspx");
break;
case 2:
Response.Redirect("UserPage.aspx");
break;
}
您需要在验证用户代码中设置角色值。
答案 1 :(得分:0)
刚刚看到您重新编辑的问题...您的导航是什么样的?您使用了哪些控件?你使用什么样的 MembershipProvider (如果有的话)?
您仍可以尝试使用treeView或菜单控件(绑定到站点地图文件)。使用这些控件可以使用 securityTrimming (有关详细信息,请参阅msdn)。
例如(来自msdn):
<system.web>
<!-- …other configuration settings -->
<siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
<providers>
<add name="XmlSiteMapProvider"
description="Default SiteMap provider."
type="System.Web.XmlSiteMapProvider "
siteMapFile="Web.sitemap"
securityTrimmingEnabled="true" />
</providers>
</siteMap>
</system.web>
此属性将更改导航控件中显示的链接的可见性。例如,具有角色管理员的用户 - 只会看到允许他们导航到的那些链接。
您能告诉我们您的导航控件吗? thx提前