使用 nameof 在 c# 中获取 setter 方法名称
本文关键字:setter 方法 获取 nameof 使用 | 更新日期: 2023-09-27 18:22:08
是否可以使用新的nameof
运算符获取setter方法名称?
public object Foo { get; set; }
public void Test()
{
var myMethod = GetType().GetMethod("set_Foo");
}
我想GetType().GetMethod("set_" + nameof(Foo))
可以工作,但还有更直接的事情吗?
不能使用 nameof
直接获取 setter 方法名称。
您可以将其与反射结合使用以获取属性,并使用PropertyInfo.SetMethod
获取资源库:
MethodInfo setterMethod = GetType().GetProperty(nameof(Foo)).SetMethod;
string setterName = setterMethod.Name;
像 -
var type = typeof(Test).GetProperties().FirstOrDefault().GetAccessors(false);
其中Test
是property
S3
类型为 string
的type
。