我遇到了在ASP.NET页面中传递int值的问题。我有一个登录页面,用户使用用户名和密码登录,用户ID在数据库中找到,用于设置变量的值,可以通过get属性访问,如果成功,则返回第二个通过此方法调用page(LoggedIn.aspx):
Server.Transfer("LoggedIn.aspx", true);
在LoggedIn页面中,我将其放在顶部:
<%@ PreviousPageType VirtualPath="~/AccountLogin.aspx" %>
userid的值存储在构造函数的全局变量中:
if (this.PreviousPage != null)
user = PreviousPage.userid;
另一个get属性提供对此变量的访问。当用户选择按钮时,该过程重复到第三页。我似乎遇到并且无法弄清楚的问题是,当用户选择LoggedIn页面上的按钮时,该页面似乎重新加载,因此userid值设置为零,因此该值无用。
答案 0 :(得分:2)
您可以通过以下方式将值从一个页面传递到另一个页面。
Response.Redirect
Cookies
Application Variables
HttpContext
<强>的Response.Redirect 强>
SET:
Response.Redirect("Defaultaspx?Name=Pandian);
GET:
string Name = Request.QueryString["Name"];
<强>缓存强>
SET:
HttpCookie cookName = new HttpCookie("Name");
cookName.Value = "Pandian";
GET:
string name = Request.Cookies["Name"].Value;
应用程序变量
SET:
Application["Name"] = "pandian";
GET:
string Name = Application["Name"].ToString();
请参阅此处的完整内容:Pass values from one to another