以编程方式通过路由/模型绑定传递URL

时间:2012-06-20 11:28:45

标签: c# asp.net-mvc asp.net-mvc-3

我有一个MVC应用程序,它具有非常复杂的路由(50多条路由),其中许多路由限制很多。

e.g:

/{optional section}/{optional section}/{optional section}/{optional section}/?p1=&p2=....

然后由复杂的自定义模型绑定器拾取,然后将路径数据转换为复杂对象,包含大约50个字段和复杂的子对象。

有什么办法可以编程方式将URL传递给MVC路由系统,让它吐出一个模型绑定对象(就像标准的action-method那样,当通过HTTP传递时)?

干杯。

1 个答案:

答案 0 :(得分:1)

其中一个RouteDebugger文件的源代码是here。在其中,您可以找到检索路由列表的方法,迭代它们,并找出哪些匹配给定的URL。您应该能够使用此示例来解决至少部分问题:确定要使用的路径定义。您也可以找出路由系统使用的类,这可能会为您提供一种方法来进行模型绑定。