c#通过表达式获取调用的属性名称
/// <summary>
/// 获取表达式调用的字段名称
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="expr"></param>
/// <returns></returns>
private string GetPropertyName<T>(Expression<Func<T, object>> expr)
{
switch (expr.Body)
{
case MemberExpression memberExpression:
return memberExpression.Member.Name;
case UnaryExpression unaryExpression:
if (unaryExpression.Operand is MemberExpression expression)
{
return expression.Member.Name;
}
break;
default:
break;
}
return "";
}
调用方法
string desc = GetPropertyName<A>(f => f.Id);
System.Console.WriteLine(desc);
留待后查,同时方便他人
联系我:renhanlinbsl@163.com
联系我:renhanlinbsl@163.com
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何调试 malloc 的底层源码
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端