gpt4 book ai didi

c# - 如何使用反射或其他准确方法获取 Controller 内部的当前 ASP.NET 核心 Controller 方法名称

转载 作者:可可西里 更新时间:2023-11-01 03:14:05 24 4
gpt4 key购买 nike

我想获取我的 ASP.NET Core Controller 的当前方法名称

我试过通过反射获取方法名:

    [HttpGet]
public async Task<IActionResult> CreateProcess(int catId)
{
string methodName = System.Reflection.MethodBase.GetCurrentMethod().Name;

但这给了我 MoveNext 而不是 CreateProcess

的值

注意我不想使用 ViewContext

string methodName = ActionContext.RouteData.Values["action"].ToString();

因为我通过启动设置将我的 url 小写。上面将让我 createprocess 而不是 CreateProcess

我最好想要一种简单的单行代码而不是多行扩展方法。

最佳答案

您可以使用它不仅是任何方法而且是 Controller 这一事实,并使用 ActionContext.ActionDescriptor.Name 属性来获取操作名称

更新:(感谢 Jim Aho)

最近的版本与 -

ControllerContext.ActionDescriptor.ActionName

关于c# - 如何使用反射或其他准确方法获取 Controller 内部的当前 ASP.NET 核心 Controller 方法名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35534337/

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