【发布时间】:2011-03-12 21:22:19
【问题描述】:
我在将 URL 作为 RouteValue 项发送并使用 one`s 参数获取 GetVirtualPath 时遇到问题。
var parameters = new RouteValueDictionary {
{ CommonUrl.UrlParameters.AnyString, "ItISAnyString"},
{CommonUrl.UrlParameters.ReturnUrl, "test/myPage/Index"}
};
并使用此参数获取 URL:
RouteTable.Routes.GetVirtualPath(null, anyRouteName, **parameters**).VirtualPath
所以我得到类似http://localhost/ItISAnyString/test/myPage/Index
的网址系统无法识别此页面并出现 404。
但如果我手动执行这样的操作
http://localhost/ItISAnyString/test$myPage$Index
一切正常。
我认为应该有更好的方法来解决这个问题。
编辑
我发现对于这条 Route dont exist any RouteValueDictionary. I think that routing dont,如果有多个“/”符号,则第二个参数不存在。所以我会创建它,看看会发生什么。
编辑
我的大学很遗憾,在将 URL 作为参数发送时我必须对其进行编码。 好的,我做到了。 但现在我有 400 错误。 对我来说有点奇怪。
【问题讨论】: