【发布时间】:2013-10-21 22:13:07
【问题描述】:
我正在尝试让路由约束与使用 REGEX 路由的路径中的 GUID 一起工作,但看不到哪里出错了。
url 被重新路由到正确的页面,但正则表达式被完全忽略(我可以放入任何垃圾并且它匹配所有内容)。
这是代码:(注意 - 这不是 MVC,而是 ASP.Net 4.5 上的网络表单)
Imports System.Web.Routing
Imports Microsoft.AspNet.FriendlyUrls
Public Module RouteConfig
Sub RegisterRoutes(ByVal routes As RouteCollection)
routes.EnableFriendlyUrls()
Dim guidRegex As String = "^(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}$"
routes.MapPageRoute("Redirect", "r/{lid}", "~/redirect.aspx", True, New RouteValueDictionary(New With {.lid = guidRegex}))
End Sub
End Module
我已经在其他正则表达式中尝试过这种技术(示例直接从 Microsoft 网站复制),但它也不起作用。 我做错了什么,但我无法弄清楚。
【问题讨论】:
标签: asp.net regex vb.net webforms url-routing