目前我的网址如下所示:
www.mysite.com/venues/<venueid>/<venuename>
例如
www.mysite.com/venues/342/myvenue
通过检查“场地”的出现,很容易为此创建一个重写 url
<rule name="view venue">
<match url="^venues/([0-9]+)?/??([a-zA-Z0-9-]+)?$" />
<action type="Rewrite" url="locationdetails.aspx?id={R:1}" />
</rule>
但是对于一个新站点,我希望我的 URL 看起来像这样:
www.mysite.com/<venuename>-<venueid>
例如
www.mysite.com/myvenue-342
我虽然创建了检查 url 中的数字并将其用作场地 ID 的重写规则,但如果场地场地名称和此友好 URL 包含一个数字,则会导致问题,例如“39 号码头”将变为“码头” -39-342",或者有没有办法捕获友好 url 中的最后一个 id(所以最后一个破折号后的 id)并将其用作 R:1 的参数?
我已经看过这个博客:http ://weblogs.asp.net/owscott/archive/2010/04/20/url-parts-available-to-url-rewrite-rules.aspx这似乎满足了我的需求,但是我不知道如何使用它。