重複の可能性:
LINQ: 配列が別の配列のサブセットであるかどうかを確認する
LINQ を使用して、サブセット配列内のすべての要素がスーパーセット配列内にあるかどうかを確認する方法があるかどうかを判断しようとしています。たとえば、このスーパーセットの場合:
{'w','o','k','r','d','o'}
以下は有効なサブセットになります。
{'o','k','w','r'}
これらは有効ではありませんが:
{'o','k','w','r','s'}
{'w','o','k','r','d','o','s'}
実際のスーパーセットは、メモリ内にある char 配列です。実際のサブセットは、データベース テーブルの値です。LINQ to EF を使用して、この条件を満たすテーブルからすべての値を取得しようとしています。これは私がこれまでに試したことです:
char[] letterArray = letters.ToCharArray();
return we.Words.Where(t => letterArray.Join(t.Word.ToCharArray(),
f => f,
s => s, (f, s) => new { s }).Count() == t.Word.Length
).Select(t => t.Word).ToArray();
しかし、これを実行するとエラーが発生します:
「'System.Char' 型の定数値を作成できません。このコンテキストでは、プリミティブ型 ('Int32、String、および Guid' など) のみがサポートされています。
このエラーを回避する方法はありますか? ここで試していることを行う簡単な方法はありますか?