LINQをかなり使用したので、今日は基本的なタスクに出くわしました。
(タイプを指定せずに)を持ってIQueryable<T>
いるIEnumerable
。
具体的には、SqlParameterCollectionのパラメーターをクエリしたいと思います。これは、ここで説明されIDataParameterCollection, IList, ICollection, IEnumerable
ているように派生しています。ただし、これらはすべてタイプが指定されていません。
したがって、私の質問は次のように要約されます。LINQを使用してSqlParameterCollectionをクエリする方法は?
これが私がしたことです(コンパイラは文句を言いませんでした):
IQueryable<SqlParameter> queryable =
sqlCommand.Parameters.AsQueryable().Cast<SqlParameter>();
//throws ArgumentException "source is not IEnumerable<>"
注:私はかなり検索しましたが、もちろん誰もがIEnumerable<T>
どちらを使用してクエリを実行するのがかなり簡単かについて話し合っていますAsQueryable()
。
私はあなたがこれをしたい理由に興味があります。これはあなたが説明したことをするはずです:
public IQueryable<T> AsQueryable<T>(IEnumerable list)
{
return list.Cast<T>().AsQueryable();
}
このように呼び出します:
IQueryable<SqlParameter> query = AsQueryable<SqlParameter>(sqlParameterCollection);
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加