我的申请表中有三页。
的Login.aspx
Report.aspx
Main.aspx
当用户点击www.abc123.com/Report.aspx网址时,如果他们没有登录,我会将他们导向www.abc123.com/Login.aspx页面,但在他们登录后我想显示Report.aspx页面而不是Main.aspx页面。下面是我的代码:
protected String Username
{
get
{
return Convert.ToString(Session["LoggedInUser"]);
}
}
protected void Page_Load(object sender, EventArgs e)
{
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetExpires(DateTime.Today.AddDays(-1));
Response.Cache.SetNoStore();
if (String.IsNullOrEmpty(Username))
{
Response.Redirect("Login.aspx");
}
答案 0 :(得分:1)
网上有很多文章。这是一个简单的 - http://support.microsoft.com/kb/301240
答案 1 :(得分:1)
据我了解您的问题和问题上下文,我怀疑您的项目既包含基于开箱即用表单的身份验证的剩余部分,也包含一些自定义身份验证代码。
解决问题的简短方法是通过设置forms - 元素的defaultPage属性来配置登录页面在web.config中重定向到的页面。
但由于这个问题与安全性有关,我强烈建议您了解ASP.NET forms based authentication的机制。干净的方法包括:
如果您需要添加受限于某些受众群体的其他网页,这也可以建立一个良好的基础。