[解決済み] Linq to SQL 「where [column] in (list of values)」はどうやるの?
2022-10-31 03:33:21
質問
私はidのリストを取得する関数を持っています。そして、私はidに関連付けられた説明に一致するリストを返す必要があります。例えば、次のとおりです。
public class CodeData
{
string CodeId {get; set;}
string Description {get; set;}
}
public List<CodeData> GetCodeDescriptionList(List<string> codeIDs)
//Given the list of institution codes, return a list of CodeData
//having the given CodeIds
}
ですから、もし私自身がこのためのSQLを作成するのであれば、次のようなことを単純に行います(ここでin句は引数codeIdsのすべての値を含んでいます)。
Select CodeId, Description FROM CodeTable WHERE CodeId IN ('1a','2b','3')
Linq to Sqlでは、"IN"節に相当するものを見つけることができないようです。 私がこれまでに見つけた最高のものは(うまくいきませんが)。
var foo = from codeData in channel.AsQueryable<CodeData>()
where codeData.CodeId == "1" || codeData.CodeId == "2"
select codeData;
問題は、コンパイル時に設定されるため、Linq to SQL の "OR" 節のリストを動的に生成することができないことです。
Linq to Sql を使用して、ある列が値の動的なリストに含まれていることをチェックする where 節をどのように達成するのでしょうか。
どのように解決するのですか?
使用方法
where list.Contains(item.Property)
あるいは、あなたの場合
var foo = from codeData in channel.AsQueryable<CodeData>()
where codeIDs.Contains(codeData.CodeId)
select codeData;
でも、ドット記法でやった方がいいかもしれません。
var foo = channel.AsQueryable<CodeData>()
.Where(codeData => codeIDs.Contains(codeData.CodeId));
関連
-
[解決済み] LINQを使用してList<T>から要素を削除する
-
[解決済み] Entity FrameworkとLINQ to SQLの比較
-
[解決済み] LINQを使用してList<string>内のすべての文字列を結合する
-
[解決済み] LINQとLambdaでJoin/Whereを実現する
-
[解決済み】groupbyとcountを使ったLINQ
-
[解決済み】匿名型の結果を返す?
-
[解決済み] LINQ を使用して、オブジェクトのリストから一意のプロパティのリストを取得するにはどうすればよいですか?
-
[解決済み] LINQを使用してデータをPivotすることは可能ですか?
-
[解決済み] Linqのgroup byのカウントを持つ
-
[解決済み] 指定された型メンバー 'Date' は LINQ to Entities でサポートされていません。イニシャライザ、エンティティ・メンバ、およびエンティティ・ナビゲーション・プロパティのみです。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] C# LINQ リスト内の重複を検索する
-
[解決済み] LINQで複数の "order by "を使用する
-
[解決済み] IEnumerable<T>のforeachのLINQでの等価性
-
[解決済み】Entity Framework。このコマンドに関連するオープンなDataReaderがすでに存在します。
-
[解決済み] エンティティフレームワークのLinqクエリInclude()複数の子エンティティ
-
[解決済み] LINQ-to-SQLとストアドプロシージャの比較?[クローズド]
-
[解決済み] LINQを使用してデータをPivotすることは可能ですか?
-
[解決済み] IQueryableとIEnumerableの違いは何ですか[重複]。
-
[解決済み] LINQ: 区分された値
-
[解決済み] NHibernateとLINQ to SQLの比較