[英]Determining the name of the action method based on request values
正如我在 Asp.Net Mvc 中所理解的,對服務器的請求被映射到控制器和動作。 例如,如果地址欄中有 stackoverflow.com/questions/ask,這意味着請求被映射到問題控制器和 ask 操作方法。
我的問題是,如果您的站點中有一個供站點客戶使用的私人區域,該怎么辦。 您將如何使用這種范式來編寫它? 這意味着如果我在登錄到我的個人區域時有一個堆棧溢出帳戶,它會在地址欄 stackoverflow.com/users 中顯示一個數字和我的用戶名。 您如何編寫名稱將是用戶的 userName 的操作? 換句話說,你如何編寫一個沒有名稱的方法,其名稱將由用戶決定
您可以設置路由的優先級:
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "questionsRoute",
url: "Questions/Ask/{id}",
defaults: new { controller = "Question", action = "Ask", id = UrlParameter.Optional }
);
routes.MapRoute(
name: "Default",
url: "users/{id}",
defaults: new { controller = "User", action = "Index", id = UrlParameter.Optional }
);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.