【发布时间】:2014-10-10 21:11:11
【问题描述】:
我在网上查了一些答案,我知道我无法将 ToInt32 转换为 T-SQL,我需要先在内存中运行我的查询,然后再进行转换,但我不知道如何申请在我的例子中。我有下面的查询,它显示了标题中写的错误消息:
string[] parts = rvm.ZipCode.Split('-');
var list = results.OrderBy(b =>
Math.Abs(Convert.ToInt32(parts[0]) - Convert.ToInt32(b.Zip))).Take(5).ToList();
results 是我之前应用的另一个查询。知道如何解决吗?
【问题讨论】:
-
据我了解,您需要将其转换为局部变量 first 中的 int32,然后将其提供给您的 LINQ 查询。这让我想知道如果您将整个转换部分包装在括号中,编译器会首先处理吗?值得一试。如果没有,只需创建一个 int32 的局部变量,并将其提供给 LINQ。