【问题标题】:Url.Action not routing correctly in .NET Hybrid MVC/Web Forms appUrl.Action 在 .NET 混合 MVC/Web 窗体应用程序中未正确路由
【发布时间】:2018-08-17 12:57:21
【问题描述】:

我的文件结构是这样的:

/Areas/ProjectApp/Controllers/
/Areas/ProjectApp/Models/
/Areas/ProjectApp/Views/

在 Views 文件夹中,我有一个 projectlist.cshtml,其中包含如下链接:

<a href="@Url.Action("Index")">Project Home</a>

项目主页实际位于:

http://localhost:57538/ProjectApp

路线是这样生成的:

http://localhost:57538/?action=Index&controller=Home

这反过来又导致:

http://localhost:57538/ (the home page of the bigger app)

我该如何解决这个问题?提前致谢。

【问题讨论】:

  • 您实际上是在为您的控制器、模型和视图使用完全不同的区域,还是这正是您设置 URL 的方式?路由不去视图,它们去控制器。请展示控制器、模型和视图的示例(Minimal, Complete, and Verifiable example)。此外,如果使用区域,请显示您的 AreaRegistration 课程。

标签: c# asp.net .net asp.net-mvc routing


【解决方案1】:

看起来您正在使用区域,在这种情况下,您必须在 Url.Action 中指定区域。

<a href="@Url.Action("Index", "Home", new { Area = "ProjectApp" })">Project Home</a>

【讨论】:

    猜你喜欢
    • 2012-02-09
    • 1970-01-01
    • 2018-08-07
    • 1970-01-01
    • 1970-01-01
    • 2020-12-14
    • 2011-10-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多