亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

實體框架/ Linq EXpression從字符串轉換為int

實體框架/ Linq EXpression從字符串轉換為int

喵喵時光機 2019-12-05 16:04:28
我有一個這樣的表達式:var values = Enumerable.Range(1,2);return message => message.Properties.Any(    p => p.Key == name     && int.Parse(p.Value) >= values[0]     && int.Parse(p.Value) <= values[1]);這樣編譯可以,但是當它命中數據庫時會拋出異常 'LINQ to Entities does not recognize the method 'Int32 Parse(System.String)' method, and this method cannot be translated into a store expression '如果我不進行分析并且將值設置為a string[],則不能在字符串上使用>=and <=運算符。p.Value 是一個包含各種值的字符串,但是在這種情況下,它是 int有沒有一種方法可以查詢數據庫以執行這種之間的語句?
查看完整描述

3 回答

?
瀟瀟雨雨

TA貢獻1833條經驗 獲得超4個贊

我最近不得不在LINQ查詢中將字符串(數字表示形式)轉換為枚舉值,而沒有實現查詢。我的枚舉使用0到9之間的int值,所以我最終做了這樣的事情:


    .Select(str => (MyEnum?)(SqlFunctions.Unicode(str) - 48))

我知道這不能為問題提供完整的解決方案,但是在像我這樣的情況下它肯定可以工作。也許有些人會發現它有用。


查看完整回答
反對 回復 2019-12-05
  • 3 回答
  • 0 關注
  • 863 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號