C# 如何在ASP.NET MVC中重写URL?

C# 如何在ASP.NET MVC中重写URL?,c#,asp.net,asp.net-mvc,url-rewriting,routes,C#,Asp.net,Asp.net Mvc,Url Rewriting,Routes,我在“admin”区域的视图下有一些文件,我想在不影响“login”的情况下重写一些操作(如“agence”和“agents”)的url,那么我该怎么做呢? 这是一个链接到我的项目的打印屏幕。 如果我正确理解您的问题,您可以通过在“RouteConfig”文件中创建新路由(App_Start->RouteConfig)来解决此问题 MVC的默认路由是: routes.MapRoute( name: "Default", url: "{controller}/{ac

我在“admin”区域的视图下有一些文件,我想在不影响“login”的情况下重写一些操作(如“agence”和“agents”)的url,那么我该怎么做呢? 这是一个链接到我的项目的打印屏幕。

如果我正确理解您的问题,您可以通过在“RouteConfig”文件中创建新路由(App_Start->RouteConfig)来解决此问题

MVC的默认路由是:

routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        new { controller = "Home", action = "Index", id = "" } 
);
您也可以将其用作创建新管线的模板。只需将新路由置于“默认”路由之上。如下所示:

routes.MapRoute(
        name: "Any distinct name",
        url: "{controllerName (judging by your question, probably }/{variable1}/{variable2}/{etc... if needed}",
        defaults: new
    {
        variable1 = UrlParameter.Optional,
        variable2 = UrlParameter.Optional
    }
);
然后,您可以在ActionLink中将所选变量作为RouteValue传递

@Html.ActionLink("LinkText", "Action", new { variable1 = whatever, variable2 = whateverElse})

最好是将相关代码粘贴到问题中,而不是提供文本截图。存在外部内容从web上消失的风险@Amranze您可以通过添加适当的路线来解决您的问题,如果您向我们展示您如何尝试这样做的代码,我们将能够帮助您这是我项目的体系结构:Area------Admin------Controllers------->HomeControllers.cs------Models------Views-->Login.cshtml-->agence.cshtml-->agences.cshtml这是HomeControllerc的代码我可以为Area文件夹添加路由吗?