linqで文字列をintに変換してエンティティに変換しますが、Convert.ToInt32とint.Parseはsqlに変換できません。データベースは大きく、すべてをメモリに取得できません(60kレコードを超えて大きくなります)。クエリは次のようになります。
int myNumber = 1390;
var result = from dr in myEntitiy.TableX
where (Convert.ToInt32(dr.stringYear) > myNumber) // <== error
select dr;
エラーは、変換メソッドを変換できないと言います
LINQ to Entitiesは、メソッド'Int32 ToInt32(System.String)'メソッドを認識せず、このメソッドをストア式に変換できません。
何の解決策
更新:これを行う方法がない場合は、これについて確認してください。データベースのフィールドタイプを変更する必要がありますが、難しいでしょう:(