C# 获取入参函数名

前言

C# 如何通过形参获得实参的名字?
C# 10 新特性 ------ CallerArgumentExpression

我最近在研究Godot,想简化Godot的操作。所有有了这个需求

csharp 复制代码
public static void Test(string str){
	console.wirteLine(nameof(str));
}
public static void Main(string[] args) {
    string newStr = "hello";
    Test(newStr);

}

打印结果

复制代码
//输出
str
//我想要的输出
newStr

最后找了好久,终于找到了最新的C#10新特性,解决了此问题

C#10新特性

C# 10 新特性 ------ CallerArgumentExpression

这里不多讲了,结果就是可以拿到形参的名称。

csharp 复制代码
public static void Test(string str,[CallerArgumentExpression(nameof(node))] string nameExpression = null){
	//这样就能拿到形参了
	console.wirteLine(nameExpression );
}
相关推荐
宸津-代码粉碎机2 分钟前
Spring AI企业级实战|Agent长期记忆持久化落地,彻底解决多轮对话上下文丢失问题
java·开发语言·人工智能·后端·python·spring
在放️2 分钟前
Python 爬虫 · bs4 模块基础
开发语言·爬虫·python
belong_my_offer3 分钟前
Python 数据采集完全指南 —— 从零开始掌握网络爬虫与文件读取
开发语言·爬虫·python
开源推荐官6 分钟前
2026 商城系统源码实测,真正适合二开的系统有哪些?
java·架构·开源
云烟成雨TD6 分钟前
Spring AI 1.x 系列【58】提示词工程(Prompt Engineering)
java·人工智能·spring
Adorable老犀牛7 分钟前
Prometheus 常用告警规则 rules.yml
开发语言·prometheus·exporter·nodeexpoeter
.NET修仙日记10 分钟前
Scrutor:.NET 依赖注入自动化的优雅实现
c#·.net·.net core·微软技术·依赖注入·scrutor
阿里matlab建模师12 分钟前
【机场停机位分配】matlab实现基于遗传算法的机场停机位分配优化研究
开发语言·算法·数学建模·matlab·全国大学生数学建模竞赛
總鑽風12 分钟前
[特殊字符] Spring AI Alibaba企业级智能助手落地实践
java·人工智能·spring
xiaoshuaishuai813 分钟前
C# Avalonia 依赖属性与WPF的区别
开发语言·c#·wpf