2013-05-21 122 views

回答

0

如何:

路線:

routes.MapRoute(
    name: "UserEdit", 
    url: "Edit/{user}", 
    defaults: new { controller = "User", action = "Edit" }, 
    constraints: new { user = @"[a-z0-9]+" /*Add valid characters here*/ } 
); 

routes.MapRoute(
    name: "UserEditWithIllegalChars", 
    url: "Edit/", 
    defaults: new { controller = "User", action = "Edit" } 
); 

路線將只匹配像/編輯/麥克和Edit/[email protected]網址。

生成URL也可以。例如

@Html.ActionLink("1", "Edit", "User", new { user = "Mike" }, new { }) 
@Html.ActionLink("2", "Edit", "User", new { user = "[email protected]" }, new { }) 

產生相同的網址,如上

控制器:

public ActionResult Edit(string user) 

注: 1),你需要檢查用戶是否爲空 2)添加有效的字符集約束因爲我不知道他們全部。

+0

謝謝,我不知道約束。 –

相關問題