Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在ASP.Net中传递参数_C#_Asp.net_Webforms - Fatal编程技术网

C# 在ASP.Net中传递参数

C# 在ASP.Net中传递参数,c#,asp.net,webforms,C#,Asp.net,Webforms,是否有任何方法可以通过ASP.NETWeb应用程序(不是MVC)中的路径(URL)将参数传递给用户控件/页面 i、 e。 其中第1段和第2段是参数。您要查找的是路由 如果您使用的是.NET4+,您可以阅读如何在上的Web窗体应用程序中实现它 假设news.aspx是您想要去的地方,您的规则基本上可以归结为: routes.MapPageRoute("NewsRoute", "News/{arg1}/{arg2}", "~/news.aspx"); 然后,您可以使用以下任何方法继

是否有任何方法可以通过ASP.NETWeb应用程序(不是MVC)中的路径(URL)将参数传递给用户控件/页面

i、 e。
其中
第1段
第2段
是参数。

您要查找的是
路由

如果您使用的是.NET4+,您可以阅读如何在上的Web窗体应用程序中实现它

假设
news.aspx
是您想要去的地方,您的规则基本上可以归结为:

routes.MapPageRoute("NewsRoute",
    "News/{arg1}/{arg2}",
    "~/news.aspx");
然后,您可以使用以下任何方法继续访问这些值:

Page.RouteData.Values["arg1"]
<asp:Literal ID="Literal" Text="<%$RouteValue:arg1%>" runat="server"></asp:Literal>
Page.routedData.Values[“arg1”]
,在NuGet中提供。

您可以使用

ASP.NET友好的URL库使启用 中基于文件的处理程序(例如ASPX、ASHX)的无扩展URL ASP.NET应用程序

Scott Hanselman有一个很好的介绍:

您可以尝试使用

按如下方式重定向页面:

Response.Redirect("Webform2.aspx?Name=" +
this.txtName.Text + "&LastName=" +
this.txtLastName.Text);
private void Page_Load(object sender, System.EventArgs e)
{
    this.txtBox1.Text = Request.QueryString["Name"];
    this.txtBox2.Text = Request.QueryString["LastName"];
} 
在新页面上,获取如下值:

Response.Redirect("Webform2.aspx?Name=" +
this.txtName.Text + "&LastName=" +
this.txtLastName.Text);
private void Page_Load(object sender, System.EventArgs e)
{
    this.txtBox1.Text = Request.QueryString["Name"];
    this.txtBox2.Text = Request.QueryString["LastName"];
} 

为什么投票结果如此接近?问题很清楚。哪个ASP.NET版本?路由在V4+中支持得更好显然这不适用于用户控件?无论如何,我都可以在用户控制上完成这项工作。您可以使用
HttpContext.Current.Request.RequestContext.routedData
从应用程序中的任何位置获取路由数据。