【发布时间】:2011-10-21 11:54:10
【问题描述】:
这就是我所拥有的
private readonly Dictionary<Type, List<object>> _cache;
public IList<T> Get<T> (Expression<Func<T, bool>> criteria)
{
return _cache[typeof(T)].Where (criteria);
}
编译器抱怨(正确地)它不能从对象转换为 T。
我应该如何从那里着手?
解决方案
return _cached[type].AsQueryable().Cast<T>().Where (criteria).ToList()
我们的想法是将 List 作为 IQueryable,然后我可以投射...
【问题讨论】:
标签: c# linq lambda expression-trees