编程语言
首页 > 编程语言> > 使用nameof在C#中获取setter方法名称

使用nameof在C#中获取setter方法名称

作者:互联网

是否可以使用新的nameof运算符获取设置方法的名称?

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;

标签:nameof,c
来源: https://codeday.me/bug/20191027/1946308.html