7

有什么办法可以PropertyInfo从它的吸气剂那里得到一个属性?像这样:

public object Foo
{
    get
    {
        PropertyInfo propertyInfoForFoo = xxx;
        ...
    }
}

我想避免将属性名称硬编码为字符串,因为这很难维护。

我正在使用 .NET 2.0,所以我希望有一个无 linq 的解决方案。

4

2 回答 2

5

MethodBase.GetCurrentMethod() 将返回 get_YourPropertyName 的 MethodInfo 对象。

PropertyInfo property = GetType()
                            .GetProperty(MethodBase
                                             .GetCurrentMethod()
                                             .Name
                                             .Substring("get_".Length)
                                        );
于 2010-08-14T13:51:52.427 回答
0

嗯......那么你打算如何被“给予”吸气剂?

我看到的唯一方法是通过类似MyGetProperyInfo(x => x.Foo);

可以做到,尽管它需要一个 lambda 和一个 Expression<>(在 C# v2 中都不可用)

于 2010-08-14T13:22:37.640 回答