FastMember usage



我需要提取所有不可枚举的公共读写属性,除非它们是字符串。这是目前通过反射完成的,想知道是否可以用FastMember完成。

我尝试了下面的代码,但它没有做我想要的。我可以使用当前版本的FastMember吗?

欢呼,
Berryl

protected void LoadCache(IHaveEditableStateProperties originator) {
    var type = originator.GetType();
    _accessor = TypeAccessor.Create(type);
    var members = _accessor.GetMembers();
    _editableState = new Dictionary<string, object>();
        foreach (var member in members) {
            if(member.Type == typeof(PropertyInfo)) {
                _editableState.Add(member.Name, _accessor[originator, member.Name]);
            }
        }
    }
    ...
}

据我所知,FastMember返回的member.Type是属性或方法的返回类型。它永远不应该是PropertyInfo,因为你正在检查你的代码。_accessor[originator, member.Name]应该返回属性的当前值

相关内容

  • 没有找到相关文章

最新更新