我需要创建一条路线,看起来像这样:
/{project}/{module_type}/{module_name}/{sub-section}/{id}
因此,就控制器/动作/ id映射而言,它将是:
controller = module_type
action = sub-section
id = id
还有另外两个变量:
我需要 project
和module_name
。
我的路线会是什么样的:
我使用的是最新版本的MVC(MVC3)
答案 0 :(得分:5)
我不知道你的意图是什么,但试试这个:
routes.MapRoute(
"NewOne", // Route name
"{project}/{controller}/{module_name}/{action}/{id}", // URL with parameters
new
{
controller = "Default",
action = "Index",
id = UrlParameter.Optional,
project = UrlParameter.Optional,
module_name = UrlParameter.Optional
} // Parameter defaults
);
然后输入类似的内容:
http://localhost:12345/Projekt3/Home/ModuleName/Index/2
会让您HomeController
和Index
行动。
修改强>
我在HomeController中添加了新动作:
public string Echo(string project, string module_name, int id)
{
return project + " " + module_name + " " + id;
}
然后请求网址:
http://localhost:25608/Projekt3/Home/ModuleName/Echo/2
结果是带有文字的空白页:
Projekt3 ModuleName 2