在CIDR表示法中,Slug对于IP地址应该是什么样的? (例如10.10.10.77/28)

时间:2011-11-20 19:40:19

标签: asp.net-mvc asp.net-mvc-3 rest slug

ASP.NET MVC应用程序需要显示此URL http://host.com/IPAddress/10.10.10.77/28;但是句点.和正斜杠/与ASP.NET MVC冲突。

我该如何处理这个请求?我想到的一些方法包括:

  • 用“魔术”字符串替换问题字符串,例如10-10-10--28,然后将其转换回逻辑值

  • 使用Key在值前面加上值,因此值只是一个slug:
    http://host.com/IPAddress/27/10-10-10--28

    查看上面的条目,我无法直接关闭IP地址,但仍然看起来不正确

  • 将ASP.NET配置为忽略句点(以某种方式)并忽略最后一个斜杠(可能通过路由) http://host.com/IPAddress/10.10.10.77/28

我对IPv6没有太多考虑,但我想我也需要包含这方面的计划。您认为我应该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

问题不在于它与MVC冲突,而是与默认路由语法不匹配。要创建匹配此语法的路由,我认为最佳路由是使用基于RegEx的路由。这是我以前用过的:http://www.iridescence.no/Posts/Defining-Routes-using-Regular-Expressions-in-ASPNET-MVC.aspx。您将需要v4和v6地址的表达式。

希望这有帮助。