我想知道是否有任何类可以生成 MethodBase/MethodInfo,或者只是生成方法名称,而不使用“魔术字符串”。现在我正在做以下事情:
public void Foo(MethodInfo method)
{
if (String.Equals("get_IsBar", method.Name, StringComparison.Ordinal))
{
// ...
}
}
相反,我想知道是否有某种方法可以从接口中获取名称“get_IsBar”,如下所示:
public interface IBar
{
bool IsBar { get; }
}
public void Foo(MethodInfo method)
{
string barMethodName = GetBarGetterMethodName(typeof(IBar), "IsBar");
if (String.Equals(barMethodName, method.Name, StringComparison.Ordinal))
{
// ...
}
}
我意识到那里仍然有一个“魔术字符串”,但至少它更易于管理。