[英]Using nameof to get a setter method name in c#
是否可以使用新的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
來獲取setter:
MethodInfo setterMethod = GetType().GetProperty(nameof(Foo)).SetMethod;
string setterName = setterMethod.Name;
就像是 -
var type = typeof(Test).GetProperties().FirstOrDefault().GetAccessors(false);
其中Test
是具有type
為string
的property
S3
的類型。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.