现在我有一个方法TResult Get<TResult>()
{
//TResult 为 IEnumerable<T>
//要如何提取出T,来作为另一个方法的泛型参数GetEntity<T>();//假设提取出了T
}T 我能得到它的Type对象,但是怎么得到它的类型,作为泛型参数
{
//TResult 为 IEnumerable<T>
//要如何提取出T,来作为另一个方法的泛型参数GetEntity<T>();//假设提取出了T
}T 我能得到它的Type对象,但是怎么得到它的类型,作为泛型参数
IEnumerble没有Current()方法呢?
刚看的是IEnumerble<T>的帮助,错了
IEnumerble.Current 返回的是一个Object,但是这个对象没办法作为一个方法的泛型参数传递哈
public IEnumerator<T> GetEnumerator()
{
return (Provider.Execute<IEnumerable<T>>(Expression)).GetEnumerator();
}
public TResult Execute<TResult>(System.Linq.Expressions.Expression expression)
{
string sql = new ExpressionParser().GetSql(expression);
//TResult is IEnumerable<T>
return new DbHelper().ExcuteQuery<T>(sql);//假设获取到T
}
上面两个方法分别实现的是IQueryable<T>,IQueryProvider