asp.net - 如何解决 ASP.NET Core 2 中 @URL.Action 的问题?
问题描述
我正在跳转到 asp.net 核心。我有使用 MVC 框架的经验。
当我在 javascript 变量中设置 URL.Action("Index", "Home") 时,结果是:mvc 4 中的“/Home/Index/”,
但在 ASP.NET Core 我尝试做完全相同的事情,但我只得到一个斜线打印的“/”
怎么了?我读过其他问题,但没有人能给出正确答案。
<input type="hidden" value="@Url.Action("Index", "Home")" id="urlIndex" />
结果:
<input type="hidden" value="/" id="urlIndex" />
解决方案
正如@Stephen Muecke 指出的那样,这是设计使然。
如果您需要通过 生成/Home/Index
,请@Url.Action("Index", "Home")
尝试添加Route
解决/Home/Index
方法。
public class HomeController : Controller
{
[Route("/")]
[Route("/Home/Index")]
public IActionResult Index()
{
return View();
}
推荐阅读
- python - 如何使用对类实例值的引用来迭代列表?
- ios - iOS 13 performActionFor shortcutItem 现在在启动时不会在 SceneDelegate 中调用,但在应用启动后会调用。为什么?
- javascript - 删除 Unicode 代码的转义
- docker - 当文件从 Docker-compose 中的主机映射卷更改时,热重载失败
- c - 在 while 循环中使用函数(在 Atom 中有效,但在 VIM 中无效)
- java - Kotlin 对 Java 类的引用
范围 - sql - BigQuery 更新与内部联接
- c# - C# 乘法表 - 仅显示 1 个乘法
- sql - 在 2 个表之间打印不匹配的记录
- r - 从 .npz 文件重建 R 中的大型稀疏矩阵