5 c# asp.net asp.net-mvc-routing asp.net-mvc-4
我有一个域名"http://www.abc.com".我在这个域上部署了一个ASP.net MVC4应用程序.我还在RouteConfig.cs中配置了默认路由,如下所示
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "MyApp", action = "Home", id = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
以上映射确保任何试图访问"http://www.abc.com"的人自动显示"http://www.abc.com/MyApp/Home"页面
一切都按预期工作,但浏览器中的地址栏显示"http://www.abc.com"而不是"http://www.abc.com/MyApp/Home".有没有办法强制浏览器显示完整的URL,包括控制器和Action?
一种选择是将默认路由设置为新控制器,可能BaseController通过操作调用Root:
public class BaseController : Controller
{
public ActionResult Root()
{
return RedirectToAction("Home","MyApp");
}
}
Run Code Online (Sandbox Code Playgroud)
并修改您的RouteConfig指向根请求:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Base", action = "Root", id = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4353 次 |
| 最近记录: |