天天看點

EF架構~讓mysql支援DbFunctions擴充函數

對于在Linq To Entity裡使用日期函數需要DbFunctions裡的擴充方法,而不能使用.net裡的日期函數,因為linq的代碼會被翻譯成SQL發到資料庫端,如你的.net方法對于資料庫是不知道的,是以需要使用DbFunctions裡的函數,它是為sqlserver設計的,而如果你的資料源是mysql,那你就尴尬了,我開始以為Mysql.Data裡內建了這些擴充函數,可遺憾的是沒有內建,是以我們需要使用其它解決方案。

EF架構~讓mysql支援DbFunctions擴充函數

在mysql裡添加對象的自函數函數

然後在linq裡使用DbFunctions就可以OK了,不會出現未定義函數的問題了

然後程式可以正常使用了,感謝各位的閱讀!