【问题标题】:Asp.Net MVC Core 1.0 - anchor tag helper with an empty areaAsp.Net MVC Core 1.0 - 带有空白区域的锚标记助手
【发布时间】:2016-02-20 17:23:20
【问题描述】:

我有一个名为 Admin 的区域,在该区域的一个页面中,我想导航到位于我的区域之外的视图,实际上它不在任何区域,我可以通过 HTML 帮助程序像这样为空:

@Html.ActionLink(item.ArticleTitle, "Details", new { id = item.ArticleId,title=item.ArticleTitle.Replace(' ', '-'), Area = "" })

但是当使用标签助手时,传空是行不通的:

<a asp-action="Details" asp-route-area="" asp-route-id="@item.ArticleId" asp-route-title="@item.ArticleTitle.Replace(' ', '-')" class="btn btn-default">Detail</a> 

值得注意的是,我已经看到了this question,但我的问题是专门关于指定区域的方式,它将我导航到当前区域之外的站点根目录,我知道我可以使用正常的 URL,但我很好奇是否可以使用标签助手来完成。

【问题讨论】:

  • 哪个控制器在您的解决方案中有详细信息操作?也许你忘了提供 asp-controller 属性?在这种情况下,仅当您当前的控制器具有详细信息操作时才会正确生成链接。

标签: asp.net-core asp.net-core-mvc tag-helpers


【解决方案1】:

使用 ASP.NET RC2 应该可以使用asp-area=""。而且我很确定即使没有指定区域,我也可以使用 RC1 回到该区域之外。

在 GitHub 上查看我的帖子:https://github.com/aspnet/Mvc/issues/4319

编辑

来自我的 GitHub 帖子:

使用 RC1,以下链接已呈现为指向根的链接,即使在一个区域内也是如此:

<a asp-controller="Home" asp-action="Index">Home</a>

使用 RC2(我每晚构建 1.0.0-rc2-20270)此类链接相对于该区域呈现。这对我有用:

<a asp-controller="Home" asp-action="Index" asp-area="">Home</a>

【讨论】:

  • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 - From Review
  • 对不起。我从链接的内容中添加了相关信息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-10-25
  • 1970-01-01
  • 2017-04-17
  • 1970-01-01
  • 2016-05-22
  • 2021-09-04
  • 1970-01-01
相关资源
最近更新 更多