2011-04-29 89 views
-2

我需要創建一個路由,這樣它看起來像這樣:我怎樣才能創建這樣一個路徑:/ {項目}/{MODULE_NAME}/{小節}/{ID}

/{project}/{module_type}/{module_name}/{sub-section}/{id} 

所以在控制器/操作/ ID映射而言這將是:

controller = module_type 
action = sub-section 
id = id 

而且會有其他兩個變量:

projectmodule_name,我需要。

會是什麼我的路線是這樣的:

我使用的是最新版本的MVC(MVC3)的

回答

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 

中你會看到HomeControllerIndex操作。

編輯:
我已經添加了新的動作到的HomeController:

public string Echo(string project, string module_name, int id) 
{ 
    return project + " " + module_name + " " + id; 
} 

然後請求URL:

http://localhost:25608/Projekt3/Home/ModuleName/Echo/2 

結果是空的頁面文字:

Projekt3 ModuleName 2