質問: N'161') ``` 正しいSQLは`AND`前に`= 1`を持つ必要があります。 しかし、和がなければ、SQLコマンドに`= 1`を加えてください
回答: まず、 `Or`は有効なC#演算子ではありません ``` .Where(p => ((p.Code == "100000") Or p.Code.EndsWith("200"))) ``` それを`||`変更するとクエリが正しく変換され、w / oの問題が実行されます。 生成されたSQLを見ると、ビット単位または演算子( `|` )を使用していることを確認できます。その場合、同じエラーが発生します。これはEFコアトランスレータのバグ可能性がありますが、あなたはとにかくそれを使用すべきではない-論理的かを使用する`||`生成されたSQLはすべての`CASE WHEN`式を持つわけではなく、典型的な単純な`WHERE`条件を持ちます。