gpt4 book ai didi

asp.net-mvc - 将 Controller 名称作为字符串可以吗?

转载 作者:行者123 更新时间:2023-12-04 10:04:48 25 4
gpt4 key购买 nike

我想知道将 Controller 名称作为字符串是否可以,如下例所示。
另外,我应该将 Action 作为字符串吗?
有没有更好的办法?
我的演唱会是,如果我因任何原因更改 Controller 的名称,我最好的选择是像现在一样在整个项目中进行“查找-替换”。
example1

非常感谢!

最佳答案

一般情况下,我们直接使用 Controller 和 Action 的名称作为字符串,如下图:

(但更改 Controller 名称后不能自动更改此写法,需要手动修改)

<a class="nav-link text-dark" asp-controller="Operation" asp-action="Index"> </a>

1.根据你目前的写法,可以更新如下代码:

(这将随着您更改 Controller 的名称而动态更改)
<a class="nav-link text-dark" asp-controller="@nameof(OperationController).Replace("Controller","")"  asp-action="@nameof(OperationController.Index)"> link </ a>

2. 作为替代解决方案,您可以添加 Route属性到 a 标记指定的操作并设置路由名称。

在a标签中,你只需要使用 asp-route来链接相应的 Action 。

请引用 this .
 <a class="nav-link text-dark" asp-route="MyRouteName"> link </a>

Controller :
 public class OperationController: Controller
{
[Route ("CustomControllerName/Index", Name="MyRouteName")]
public IActionResult Index ()
{
return View ();
}
}

关于asp.net-mvc - 将 Controller 名称作为字符串可以吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61639890/

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