gpt4 book ai didi

c# - 区域的默认 Controller ?

转载 作者:行者123 更新时间:2023-11-30 22:46:27 24 4
gpt4 key购买 nike

这有点像 Trouble setting a default controller in MVC 2 RC Area 的副本

但他的回答并不令我满意,因为它不起作用。

我有以下内容

/Areas/TestArea/Controllers/HelloController
/Areas/TestArea/Views/Hello/Index

/Controllers/HomeController
/Views/Home/Index

有以下路线:

routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);

routes.MapRoute(
"Default2", // Route name
"TestArea/{controller}/{action}/{id}", // URL with parameters
new { controller = "Hello", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);

我添加了第二个以尝试获取 http://servername/TestAreahttp://servername/TestArea/Hello 一样工作但没有成功。基础http://servername/按预期工作。

那么问题来了:如何返回一个区域中的默认 Controller ?

编辑:我上传了一个示例项目来说明我的意思:http://beginningasp.net/TestAsync.zip

最佳答案

尝试在默认路由之前注册Default2路由,并在默认值中设置area=yourareaname

routes.MapRoute(
"Default2", // Route name
"TestArea/{controller}/{action}/{id}", // URL with parameters
new { controller = "Hello", action = "Index",area="TestArea", id = UrlParameter.Optional } // Parameter defaults
);

routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);

关于c# - 区域的默认 Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2640104/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com