1. ホーム
  2. .net

[解決済み] Entity FrameworkのLike Operator?

2022-12-11 17:34:32

質問

Entity Framework で、文字列フィールドを持つエンティティに "LIKE" 演算子を実装しようとしているのですが、サポートされていないようです。 このようなことを行おうとした人は他にいますか?

これは ブログ記事 には、私たちが抱えている問題がまとめられています。 contains を使用することもできますが、それは LIKE の最も単純なケースにしかマッチしません。 contains、startswith、endswith、および indexof を組み合わせることで実現できますが、標準のワイルドカードと Linq to Entities コードの間の変換が必要です。

どのように解決するのか?

これは今となっては古い記事ですが、答えを探している人のために。 このリンク が役に立つはずです。にアクセスしてください。 この回答 には、すでにEF 6.2.xを使用している場合。 この回答 を使用している場合は、EF Core 2.x

ショートバージョンです。

SqlFunctions.PatIndex メソッド - すべての有効なテキストおよび文字データ型において、指定された式でパターンが最初に出現する開始位置、またはパターンが見つからなかった場合はゼロを返します。

名前空間 名前空間: System.Data.Objects.SqlClient アセンブリ System.Data.Entity (System.Data.Entity.dll 内)

また、ちょっとした解説がこの中に出てきます。 フォーラムスレッド .