传递参数ASP.Net

rav*_*lva 5 c# asp.net webforms

有没有办法可以通过ASP.Net Web应用程序(而不是MVC)中的路径(URL)将参数传递给用户控件/页面.

http://abc.com/news/para-1/para-2 其中para-1para-2是参数.

Rud*_*ser 5

您正在寻找的是什么Routing.

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

你的规则基本上归结为这个,假设news.aspx你想去的地方:

routes.MapPageRoute("NewsRoute",
    "News/{arg1}/{arg2}",
    "~/news.aspx");
Run Code Online (Sandbox Code Playgroud)

然后,您可以使用以下任一方法继续访问这些值:

Page.RouteData.Values["arg1"]
<asp:Literal ID="Literal" Text="<%$RouteValue:arg1%>" runat="server"></asp:Literal>
Run Code Online (Sandbox Code Playgroud)

如果你不使用.NET 4+,Scott Hanselman会写一篇关于ASP.NET FriendlyUrls的文章,它可以在NuGet中找到.