use*_*119 8 c# asp.net routing
我创建了一个新的Web窗体(ASP.NET 4.5)项目,我正在尝试使URL路由工作.
RouteConfig.cs 看起来像这样:
routes.MapPageRoute("surveyhome", "survey/home", "~/Survey.aspx");
routes.MapPageRoute("surveyquestions", "survey/questions/{q}", "~/Survey.aspx");
Run Code Online (Sandbox Code Playgroud)
我有一个看起来像这样的链接:
<a href="/survey/questions/1">1</a>
Run Code Online (Sandbox Code Playgroud)
它正确加载Survey.aspx页面,所以我知道它部分工作,但这段代码(在该页面的代码隐藏)不起作用:
if (Page.RouteData.Values["q"] != null)
{
// do something
}
Run Code Online (Sandbox Code Playgroud)
它始终为空.为什么?
我已经测试了你的代码,在 ASP.NET 4.0 上没有任何问题。
尝试定义默认值,例如
routes.MapPageRoute("surveyquestions",
"survey/questions/{q}", "~/Survey.aspx",
false,
new RouteValueDictionary
{ { "q", String.Empty } });
Run Code Online (Sandbox Code Playgroud)
这解决了您的问题吗?
| 归档时间: |
|
| 查看次数: |
8013 次 |
| 最近记录: |