「魔法の文字列」を使用せずに、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))
{
// ...
}
}
そこにはまだ「魔法のひも」があることに気づきましたが、少なくともそれはより扱いやすいものです。