我有以下代码:
Type type = Type.GetTypeFromProgID("interopTypeName");
dynamic obj = Activator.CreateInstance(type);
string propertyName = "somePropertyName";
// how to get somePropertyName from obj?
没有动态就可以做到这一点。 Here是Marc Gravell的解决方法。 然而,如果有可能使用动态来做这件事很有意思。
答案 0 :(得分:1)
Mark Gravell有一个名为FastMember的开源项目,可以使用api dynamic generates代码轻松访问属性。
var wrapped = ObjectAccessor.Create(obj);
var result = wrapped[somePropertyName];