我需要在我的应用中使用属性名称,然后使用下一个代码来获取它
string PropertyName =SomeClass.GetType().GetProperty("Category").Name;
但我认为这是个坏主意。因为我使用Web服务类,我不知道什么时候可以更改属性名称。此代码仅在运行时提供异常。但是如果我写这样的东西SomeClassInstance.Property.GetProperyName我在编译时得到异常并修复这个问题。 是否可以动态获取属性名称?
答案 0 :(得分:2)
答案 1 :(得分:1)
Expression<Func<string>> expression = () => Sample.Foo;
MemberExpression body = (MemberExpression)expression.Body;
string name = body.Member.Name;
Sample.Foo是您的财产 那就是SomeClass.Category.Name