向asp.net中的新页面传递参数(在重定向中)



我想在Asp.net中填充Listview,记录应该链接到另一个页面。当用户单击一条记录时,他们将重定向到与该记录相关的新页面。我有很多参数要保留。

页重定向,有没有其他方法传递参数除了" QueryString "?

您可以使用 Cookies

SET :

HttpCookie cookieName = new HttpCookie("Name");
cookieName.Value = "SarahN"; 

GET :

string name = Request.Cookies["Name"].Value;

可以使用

Application Variables

SET :

Application["Name"] = "SarahN";

GET :

string Name = Application["Name"].ToString();

可以使用Context对象

通过上下文对象传递值是另一种广泛使用的方法。

MyForm1.aspx.cs

TextBox1.Text = this.Context.Items["Parameter"].ToString();

MyForm2.aspx.cs

this.Context.Items["Parameter"] = TextBox1.Text;
Server.Transfer("MyForm2.aspx", true);
从MSDN

<

上下文/strong>

Context对象保存单个用户的数据请求,并且它仅在请求期间持久化。的上下文容器可以容纳大量的数据,但通常情况下是这样用于保存小块数据,因为它经常被实现每个请求都通过global.asax中的处理程序。上下文容器(可从Page对象访问或使用提供了System.Web.HttpContext.Current)来保存需要的值在不同的httpmodule和httphandler之间传递。它可以也可用于保存与整体相关的信息请求。例如,IBuySpy门户填充了一些配置在Application_BeginRequest期间将信息放入此容器事件处理程序中的global.asax. .注意,这只适用于当前请求;如果你需要的东西还在对于下一个请求,可以考虑使用ViewState。设置和获取上下文集合中的数据使用的语法与您使用的语法相同已经在其他集合对象中见过了,比如Application,Session和Cache。下面是两个简单的例子:

// Add item to
Context Context.Items["myKey"] = myValue;
// Read an item from the
 Context Response.Write(Context["myKey"]);

你也可以参考:

  • ASP。. NET状态管理概述
  • 如何:在ASP. js之间传递值. NET Web Forms Pages

相关内容

  • 没有找到相关文章

最新更新