你好:EF可以支持多數據庫的,比如sql server, mysql , oracle,它可以做到遷移數據庫,可以幾乎不改代碼,但是,edmx其實是一個配置文件,也包含了目標數據庫的信息。如果要做到更改配置就可以切換數據庫,那么,有以下幾點:
1:3種數據庫的provider的文檔要仔細看,確認哪些功能是不被支持的,取支持功能的最小集,寫進開發規范,規定哪些linq語句不允許寫。
2:為3種數據庫準備3套edmx,這樣比較簡單,也可以把ssld之類生成在dll之外,然后動態修改,但容易出錯且麻煩。不論是dbfirset還是codefirst,根據目標數據庫類型重新生成edmx都比較簡單。
3:更改連接串,EF的連接串中,需要指定傳統連接串/EF的provider/相應的edmx配置(ssld,csdl,msl),把這3個要素都根據1,2配置為你的目標數據庫對應的配置之后,理論上,你的代碼就可以直接運行。
上一篇excel中如何開根號?
下一篇ek螺桿機故障代碼?