public class LoginController : Controller
{
public ActionResult Index()
{
return View();
}
}
如果是上面的代码,我们访问这个路由地址就是http://localhost:29264/Login/Index
如果不想暴露出来这个接口,需要在方法上面加上自定义路由地址: [Route("Login/MyLogin")]
只做这样的设置是无法按照http://localhost:29264/Login/MyLogin 这样的地址访问到页面的。
我们还需要在RouteConfig.cs文件中
public static void RegisterRoutes(RouteCollection routes)
{
//加上这句就可以了
routes.MapMvcAttributeRoutes();
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
这样我们就可以通过http://localhost:29264/Login/MyLogin这个路径访问页面了,而原来的路由地址是找不到页面的。