當試圖從零開始的字符串條件linq lambda表達式得到麻煩,它不起作用。Lambda表達式當條件得到麻煩時,字符串從零開始
CityCode
字段類型是字符串。
例如:
var hospitals=context.Hospitals.Where(p=>p.CityCode=="01");
然後它不從數據庫返回的任何行。
但當試試這個:
var hospitals=context.Hospitals.Where(p=>p.CityCode=="21");
它可以完美運行。
我該如何解決這個問題?
請幫
不,該代碼不「完美」 - 它不會編譯,因爲「21」不是有效的字符文字。現在,請顯示這是用來匹配的數據。數據庫中的字段類型是什麼?你在這裏沒有使用數字類型的原因? –
是CityCode類型的字符串嗎?那麼你應該使用雙引號(「01」) –
假設單引號是一個錯字,應該是雙引號,並且'CityCode'實際上是DB中的一個'string'類型,我猜測你可能有一個值像「1」,但這不會匹配「01」。由於我們必須做出這麼多的假設,所以你不清楚你的問題是什麼。 – juharr