将参数发送到另一个ASP.Net页面

Or *_*r K 2 c# asp.net parameters

我在c#中有一个名为"Point"的课程.

public class Point(){
.
.
}
Run Code Online (Sandbox Code Playgroud)

page1.aspx我创建了:

Point p1 = new Point();
Run Code Online (Sandbox Code Playgroud)

我想将它发送到page2.aspx.我尝试发送:

Response.Redirect("~/page2.aspx?x=p1");
Run Code Online (Sandbox Code Playgroud)

并在第2页中获取:

Point p2 =Request.QueryString["x"];
Run Code Online (Sandbox Code Playgroud)

这是行不通的.你能帮我吗?

Jon*_*ood 5

除了你不能只将"p1"放在一个字符串中并让它引用一个类实例这一事实之外,你不能只是添加一个对象作为查询参数.

您需要为每个元素的URL添加参数Point.例如:

Response.Redirect(String.Format("~/page2.aspx?x={0}&y={1}", p1.x, p1.y));
Run Code Online (Sandbox Code Playgroud)

或者,Session如果您不需要它作为查询参数,则可以使用.


CDs*_*ace 4

您需要使用Session而不是 QueryString

Session["myPoint"] = p1;
Run Code Online (Sandbox Code Playgroud)

然后在page2.aspx上

p2 = (Point)Session["myPoint"]
Run Code Online (Sandbox Code Playgroud)