我目前正在努力在集合中的项目上使用成员表达式来完成一种方法。我知道如何编写一个直接持有集合成员的成员表达式,但我如何告诉它使用它的基础类型。
private Collection<TestClass> collection { get; set; }
DoSomethingWithCollection(collection, () => collection.Count);
private void DoSomethingWithCollection(Collection<TestClass> collection, MemberExpression member)
{
foreach(var item in collection)
{
//use reflexion to get the property for each item
//based on the memberexpression and work with it
}
}
我将如何重写此代码,以使 DoSomethingWithCollection 的调用可以保存集合基础类型的 Memberexpression,因此来自“TestClass”?