ASP.NET MVC路由扩展:路由映射
2012-03-26 11:39:19 来源:WEB开发网核心提示: </td> </tr> <tr> <td>DataTokens:</td> <td>
</td>
</tr>
<tr>
<td>DataTokens:</td>
<td>
<ul>
<%foreach (var variable in GetRouteData().DataTokens)
{%>
<li><%=variable.Key%>=<%=variable.Value%></li>
<% }%>
</ul>
</td>
</tr>
</table>
</div>
</form>
</body>
我们将GetRouteData方法定义在当前页面的后台代码中。如下面的代码片断所示,我们手工创建了一个HttpRequest和HttpResponse对象,HttpRequest的请求的地址为“http://localhost:3721/0512/3”(3721是本Web应用对应的端口号)。根据这两个对象创建了HttpContext对象,并以此创建一个HttpContextWrapper对象。最终我们将其作为参数调用RouteTable的Routes属性的GetRouteData方法并返回。这个方法实际上就是模拟注册的路由表针对相对地址为“/0512/3”的HTTP请求的路由处理。
public partial class Default : System.Web.UI.Page
{
private RouteData routeData;
public RouteData GetRouteData()
{
if (null != routeData)
{
return routeData;
}
HttpRequest request = new HttpRequest("default.aspx", "http://localhost:3721/0512/3", null);
HttpResponse response = new HttpResponse(new StringWriter());
HttpContext context = new HttpContext(request, response);
HttpContextBase contextWrapper = new HttpContextWrapper(context);
return routeData = RouteTable.Routes.GetRouteData(contextWrapper);
}
- ››ASP.NET及JS中的cookie基本用法
- ››ASP.NET获取MS SQL Server安装实例
- ››asp.net实现调用百度pai 在线翻译英文转中文
- ››ASP.NET页面选项进行提示判断
- ››Asp.net定时执行程序
- ››ASP.NET中利用DataList实现图片无缝滚动
- ››ASP.NET验证控件RequiredFieldValidator
- ››ASP.NET中使用System.Net.Mail发邮件
- ››ASP.NET中获取用户控件中控件的ID
- ››ASP.NET中FileBytes写成文件并存档
- ››asp获取毫秒数
- ››asp.net报“INSERT INTO 语句的语法错误解决
更多精彩
赞助商链接