Кто-нибудь знает, как написать метод ExpressionHelper.GetName, чтобы я мог получить имя открытого статического / константного свойства или поля, используя Reflection и C # 3.0
Так что для
static class B
{
public const string Field = "mittens";
public static string Prop = "the kitten";
}
Следующие утверждения будут работать (синтаксис явно не будет работать)
Assert.AreEqual(ExpressionHelper.GetName(B.Field),"Field");
Assert.AreEqual(ExpressionHelper.GetName(B.Prop),"Prop");
Важно, чтобы при компиляции этих полей / реквизитов возникали ошибки времени компиляции.
Спасибо!