下面是我登录按钮的代码,本来应该从http://localhost:3298/Admin/Login.aspx 跳转到
http://localhost:3298/Admin/Main.aspx,可是不知道为什么跳转到http://localhost:3298/Admin/Login.aspx?ReturnUrl=%2fAdmin%2fMain.aspx这个跳径,好奇怪,原来出这个问题我只要清下IE里的COOKIES就可以正常中转,现在不知道为什么,清了也没用了。一直跳这个方便面。高手来指点下。
protected void imgbtnlogin_Click(object sender, ImageClickEventArgs e)
{
if (this.txtworkcard.Text == string.Empty)
{
Response.Write("<script>alert('您输入的工号有误!');</script>");
}
else
{
ISysMgrContract dal = DataAccess.GetSysMgrDAL();
UserModel user = dal.GetUserByWhere(string.Format("where UserCode='{0}'", txtworkcard.Text));
if (user == null) return;
if (user.USERPASSWORD != txtpassword.Text.Trim())
{
Response.Write("<script>alert('您输入的密码有误,登录失败!');</script>");
}
else
{
Response.Cookies["userid"].Value = user.USERID.ToString();
Response.Cookies["userid"].Expires = DateTime.Now.AddDays(1);
Response.Cookies["username"].Value = ddlname.SelectedItem.Text.ToString();
Response.Cookies["username"].Expires = DateTime.Now.AddDays(1);
Response.Cookies["modality"].Value = ddldictionary.SelectedItem.Value.ToString().Trim();
Response.Cookies["modality"].Expires = DateTime.Now.AddDays(1);
//页面跳转
Response.Redirect("../Admin/Main.aspx", true);
Response.End();
}
}
}
http://localhost:3298/Admin/Main.aspx,可是不知道为什么跳转到http://localhost:3298/Admin/Login.aspx?ReturnUrl=%2fAdmin%2fMain.aspx这个跳径,好奇怪,原来出这个问题我只要清下IE里的COOKIES就可以正常中转,现在不知道为什么,清了也没用了。一直跳这个方便面。高手来指点下。
protected void imgbtnlogin_Click(object sender, ImageClickEventArgs e)
{
if (this.txtworkcard.Text == string.Empty)
{
Response.Write("<script>alert('您输入的工号有误!');</script>");
}
else
{
ISysMgrContract dal = DataAccess.GetSysMgrDAL();
UserModel user = dal.GetUserByWhere(string.Format("where UserCode='{0}'", txtworkcard.Text));
if (user == null) return;
if (user.USERPASSWORD != txtpassword.Text.Trim())
{
Response.Write("<script>alert('您输入的密码有误,登录失败!');</script>");
}
else
{
Response.Cookies["userid"].Value = user.USERID.ToString();
Response.Cookies["userid"].Expires = DateTime.Now.AddDays(1);
Response.Cookies["username"].Value = ddlname.SelectedItem.Text.ToString();
Response.Cookies["username"].Expires = DateTime.Now.AddDays(1);
Response.Cookies["modality"].Value = ddldictionary.SelectedItem.Value.ToString().Trim();
Response.Cookies["modality"].Expires = DateTime.Now.AddDays(1);
//页面跳转
Response.Redirect("../Admin/Main.aspx", true);
Response.End();
}
}
}
===========
Response.Redirect("Main.aspx");
我那样写应该没有错啊,因为以前可以的。只是有时候会跳不了,清下COOKIE就行,现在不管怎么样都跳转不了,我在想是不是和COOKIE有关系。这个登录按钮是我是改动过一下,但我想应该没问题的啊
感觉好奇怪
Response.Redirect("../Admin/Main.aspx", true);
Response.End();只需要Response.Redirect("../Admin/Main.aspx");就够了,它默认就是Response.End();的
string str = FormsAuthentication.Encrypt(ticket);
HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, str);
this.Context.Response.Cookies.Add(cookie);这个代码干嘛用的?我加了就可以了。以前有时候跳转不了什么关系?COOKIE丢了?
ASP。NET要清缓存怎么清?
这个就是在服务端的Cookie集合中添加一个Cookie,然后把它发送给客户端清除缓存,一搜一大把啊Response.Buffer = true ....
清除缓存的方法试了一堆没用在服务端的Cookie集合中添加一个Cookie,然后把它发送给客户端,有什么用?