FastMember是否支持匿名类型



我使用FastMember作为反射的替代方案。在源代码中,我看到有一个匿名类型支持的单元测试,但当我尝试为匿名类型创建TypeMember.CreateNew()时,我得到了NotSupportedException。他们不受支持吗?

TypeMember支持它们,但不支持它们-您应该使用ObjectAccessor,如:

var obj = new {A = 123, B = "def"};
var accessor = ObjectAccessor.Create(obj);
Assert.AreEqual(123, accessor["A"]);

这个问题很老,但我也有同样的疑问,你可以简单地做:

var anon = new
{
    Prop1 = "a",
    Prop2 = "b"
};
MemberSet members =
    TypeAccessor
        .Create(anon.GetType())
        .GetMembers();

相关内容

  • 没有找到相关文章

最新更新