苏飞论坛

标题: 如何获取类中属性的名称 [打印本页]

作者: 站长苏飞    时间: 2012-11-13 13:24
标题: 如何获取类中属性的名称
比如现在有一个类如下:
[code=csharp]class Item {
    public GUID Id { get; set; }
    public string Name { get; set; }
}[/code]
有什么办法可以在调用的时候获取类中属性的名称如:
[code=csharp]Item item = new Item();[/code]
第一种方法
[code=csharp]string name = typeof(Item).GetProperties(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance)[1].Name;[/code]
第二种方法
[code=csharp]public string GetPropertyName(Expression<Func<Item, string>> expr)
        {
            var name = ((MemberExpression)expr.Body).Member.Name;
            return name;
        }
string name = GetPropertyName(o=>o.Name);[/code]
好了大家还有什么好的建议,可以分享出来






欢迎光临 苏飞论坛 (http://www.sufeinet.com/) Powered by Discuz! X3.4