请教你一个关于mvc路由的问题好么?

routes.MapRoute("AjaxRequest",//Routename"Ajax/{str}",//URLwithparametersnew{controll... routes.MapRoute(
"AjaxRequest", // Route name
"Ajax/{str}", // URL with parameters
new { controller = "Ajax", action = "Process", id = UrlParameter.Optional, str = @"([0-9a-z]+/?)*" }
// Parameter defaults
);
现在 可以正常在访问http://localhost:13140/Ajax/s访问到process
但是http://localhost:13140/Ajax/s/s就访问不到了.
我知道可以把Ajax/{str}改成Ajax/{str}/{str1}是可以达到目的的
但是如果他的分级不确定呢?
也就是http://localhost:13140/Ajax/s/下面可又能a/b/c 我都希望能跳到process
我该如何处理? 我的正则 @"([0-9a-z]+/?)*" 这样有问题么?这不就是规定str可以重复出现 a/a/a/a/...或者 a 或者 a/

不好意思 分用完了 谢谢你能看到我的问题
展开
 我来答
天诚乐66
2011-06-11
知道答主
回答量:11
采纳率:0%
帮助的人:8.7万
展开全部
正则表达式一般用于控制参数,很少用于控制action。实现你的想法可以先试试这样:url改为:Ajax/{str}/{*otherInfo} ,然后试试,我试了试,发现图片无法加载,其他的到没问题。你先看看吧。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式