我想保留相同的服务器网址。例如:10.139.183.192到所有页面。
我不想显示10.139.183.192/Task/Create
当用户在地址栏上输入时,路线必须继续。但我想隐藏它。
我一直在搜索关于url重写的很多内容,但我找不到解决方案。
我试图更改全局asax,注册路由等
我是否在IIS服务器或应用程序中进行了更改?
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
答案 0 :(得分:1)
您可以在Home Controller上处理所有页面并根据帖子返回View,例如:
public ActionResult Home()
{
string page = Request["page"];
switch (page)
{
case "Home":
return View();
break;
case "Product":
return View("Product");
break;
default:
return View();
break;
}
return View();
}
或
用户访问所有控制器并编码JS以更改URL,如下所示:
window.onload = function(){
window.history.pushState("", "", "/");
}
答案 1 :(得分:0)
如果您使用Angular.JS等客户端框架,则只能本机执行此操作。
在C#.NET MVC5中,我只想到了三个想法。
10.139.183.192
,而不像上面的网址将更改的位置(GET参数)。就我个人而言,我认为您要实现的目标应该是使用专用的客户端框架(它们是为此而制作的,但它是JavaScript,而不是C#我相信)或使用Ajax方法。