我有一个缓存类,它将列表存储到字典中:
public class CacheList<T>
{
private Dictionary<UInt64, T> _cacheItems = new Dictionary<UInt64, T>();
public IList<T> GetItems()
{
return new List<T>(_cacheItems.Values);
}
public void Add(T item)
{
UInt64 key = (UInt64)(item.GetHashCode());
if (!_cacheItems.ContainsKey(key))
_cacheItems.Add(key, item);
}
}
现在我通过从通用 T 中获取哈希码来将项目添加到字典中。但我想指定我希望将哪个字段/属性作为键。问题是它是一个类型 T 所以它不知道这个项目中有哪些属性。
如何从通用项目访问属性?