これが私の問題です。企業やユーザーなどのリストがあり、「StartsWith」検索タイプで検索する必要があります。したがって、私たちのサイトには、テキストボックスなどの検索フィールドはありませんが、27個のボタン「#」、「A」、「B」、「C」、[...]"を含む検索ヘッダーがあります。 Z」。
私たちが抱えている問題は、ユーザーが「E」ボタンをクリックした場合、データベースから値を取得するためにクエリを実行すると、企業名が「É」、「È」、「Ê」で始まる場合があることです。そうです、私たちのサイトはフランス語です。 。LINQでそれを行う方法のアイデア。
これは、LLBLGenProを使用していることも知っておくことが重要です。したがって、彼が有効なSQLクエリに変換できるものが必要だと思います。
これが私たちがすでに試したことです:
IList<Enterprise>エンタープライズ; スイッチ(searchChar){ [...] ケース「E」: 企業=ourContext.Enterprisesのentから ここで、"eèéêë".Any(param => ent.name [0] == param) entを選択します。 壊す; [...] }
これにより、このエラーは変換不可能なクエリと比較して何かが発生します。
Unable to cast object of type 'System.Linq.Expressions.ConstantExpression' to type 'SD.LLBLGen.Pro.LinqSupportClasses.ExpressionClasses.SetExpression'.
そのため、DBにクエリを実行して可能かどうかを確認せずに、基本的に単純なLINQクエリを使用して作成しようとしました。
IList <string> test = new List <string>(){"École"、 "enlever"、 "avoir"}; IList <string> result =(テストの値から ここで、「eéèêë」.Contains(value [0] .ToString()) 値を選択).ToList();
このクエリの奇妙な点は、クラッシュしないことです。しかし、それも機能しません!デバッグするときはそれを通り抜けますが、「結果」リストに何が入っているかを確認しようとすると、何も入っていないようなものです。つまり、リストは単にnullです。しかし、トライキャッチに失敗するものはありません!
助けてください !