将linq中的字符串转换为大型数据库中的实体我将linq中的字符串转换为int到实体,但转换为.ToInt32和int.Parse无法转换为sql,我的数据库很大,无法容纳内存中的所有内容(超过60k条记录并且越来越大)我的查询就像intmyNumber=1390;varresult=fromdrinmyEntitiy.TableXwhere(Convert.ToInt32(dr.stringYear)>myNumber)//<==errorselectdr;错误说无法转换转换方法LINQtoEntities无法识别方法“Int32ToInt32(System.String)”方法,并且此方法无法转换为存储的表达式。什么解决方案更新:如果没有办法做到这一点,请让我确定这一点,然后我必须更改数据库中的字段类型,但这将很难:(我认为比较为stringsunlessYouhaveyear<1000or>9999:...dr.stringYear.CompareTo(myNumberString)>0优点是stringYear上的任何索引都可以用于执行计划。将stringYear转换为数字会消除任何索引。这样可以,但是得到的SQL会很乱??以上是C#学习教程:Convertingastringinlinqtoanentityinalargedatabase把所有内容分享出来,如果对大家有用,还需要进一步了解C#学习教程,希望大家多多关注——intmyNumber=1390;varresult=fromdrinmyEntitiy.TableXletnum=myEntitiy.TableX.Take(1).Select(x=>dr.stringYear).Cast().FirstOrDefault()其中num>myNumber选择dr;本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
