我在網上檢查了一些答案,並且我瞭解到我無法將ToInt32轉換爲T-SQL,並且我需要使用運行我的查詢先記住內存,然後再進行轉換,但我不知道如何將其應用於我的示例中。我有下面的查詢,它顯示了我寫在標題中錯誤消息:LINQ to Entities不能識別方法'Int32 ToInt32(System.String)'方法
string[] parts = rvm.ZipCode.Split('-');
var list = results.OrderBy(b =>
Math.Abs(Convert.ToInt32(parts[0]) - Convert.ToInt32(b.Zip))).Take(5).ToList();
哪裏results
是另一個查詢,我之前應用。任何想法如何解決它?
從我的理解,你需要將它轉換爲int32在本地變量* first *,然後將其提供給您的LINQ查詢。這讓我懷疑你是否將整個轉換部分包含在括號中,編譯器是否會首先處理它?值得一試。如果沒有,只需製作一個int32的局部變量,並將其提供給LINQ。 – Jason 2014-10-10 13:10:16