我有一个MVC应用程序,当我在调试时浏览到根目录(http://localhost:5000)时,它将尝试加载index.html,而不是将我带到{HomeController} / {Index}
如果我将应用程序构建到Docker映像中,则路由将按预期工作
所有其他路由均按预期工作,但是这一步,我在项目中的任何地方都看不到对index.html的引用。
我的路线映射(Startup.cs):
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
HomeController:
public class HomeController : Controller
{
public IActionResult Index()
{
return View();
}
}
我的视图默认设置为
观看次数
-首页
--Index.cshtml
答案 0 :(得分:0)
您是否在控制器上使用route属性?如果是,则将其删除并重试,因为当您使用route属性时,在UseMvc和UseMvcWithDefaultRoute()中定义的所有路由都将被忽略Source.
另一种解决方案是在index方法之前添加route属性:
[Route("")]
[Route("Home")]
[Route("Home/Index")]
public IActionResult Index()
{
return View();
}