Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
asp.net mvc url路由(禁用对/索引和查询字符串的访问_Asp.net_Asp.net Mvc_Asp.net Mvc 4_Razor - Fatal编程技术网

asp.net mvc url路由(禁用对/索引和查询字符串的访问

asp.net mvc url路由(禁用对/索引和查询字符串的访问,asp.net,asp.net-mvc,asp.net-mvc-4,razor,Asp.net,Asp.net Mvc,Asp.net Mvc 4,Razor,假设我们有以下控制器代码,默认为Home/Index,我有一个域www.abc.com 如何配置使www.abc.com/home和www.abc.com/home/index成为404页 public HomeController : Controller { public ActionResult Index() { } } 另外,假设我有这样的控制器,我假设用户可以通过以下方式访问它:www.abc.com/home/index/1或使用查询字符

假设我们有以下控制器代码,默认为Home/Index,我有一个域www.abc.com

如何配置使www.abc.com/home和www.abc.com/home/index成为404页

 public HomeController : Controller {
        public ActionResult Index() {
        }
    }
另外,假设我有这样的控制器,我假设用户可以通过以下方式访问它:www.abc.com/home/index/1或使用查询字符串www.abc.com/home/index/?id=1。我想为这个url显示404页:www.abc.com/home/index/?id=1。如何做到这一点

public HomeController : Controller {
        public ActionResult Index(string id) {
        }
    }

在RouteConfig.RegisterRoutes方法中,这将使/home和/home/index显示404:

routes.MapRoute(
    name: "Home",
    url: "",
    defaults: new { controller = "Home", action = "Index" });
此路由将允许/home/index/1,但对于/home/index/?id=1,它将为404:

这是ASP.NET MVC中非常基本的路由。我建议阅读一些文档以了解更多信息

routes.MapRoute(
    name: "Home",
    url: "home/index/{id}",
    defaults: new { controller = "Home", action = "Index" });