在.net core程序中使用EntityFrameok(非EF Core)

最近用NoSQL較多寫,用傳統的EF到很少,但在一些.net core小程序中也小試牛刀過,不過當時用的是微軟爲.net core量身定製的Entity Framework Core,只是一些比較常規的增刪改查,沒有怎麼深刻使用,感受差異不大。雖然知道EF Core是從新設計的,但以爲EF Core和EF在輕度使用上差異不大。小程序

這兩天打算計劃重構一個老項目,想將其遷移到.net core上去。簡單的試了一下,大部分的功能移植比較順利,但卻發現EF遷移到EF Core不是那麼容易的事情,模型的關係映射的API就有不小差別,另外,底層的一些API也有很多差別。甚至官方也說EF6到EF core不是升級,不建議將EF6程序遷移到EF Core測試

雖然能夠一個個的修改和適配,但額外的工做量就一下上來了,而且還帶來了很多測試的工做。網上搜了一下解決方案,有一個第三方移植的支持.net core的移植版本EF,但這個是非官方版本,擔憂裏面有坑,不敢嘗試。.net

正當我準備放棄.net core的遷移的時候,不經意間把nuget的預覽版本的選項打開了,發現EF 6.3 preview版本支持.net standard了,而後就下載試了一下,直接順利遷移過去就能用。感受也沒有什麼bug。找了一下官方的文檔:Announcing Entity Framework 6.3 Preview with .NET Core Support。EF 6.3是支持.net core的,它會隨着.net core 3.0一塊兒發佈,估計在9月份也能發佈了,等到時候發佈正式版的時候再試一下,感興趣的朋友能夠先嚐鮮試一下。設計

固然,EF Core纔是將來的版本,若是準備將項目長期演進的話,仍是建議遷移到EF Core的。blog

相關文章
相關標籤/搜索