介紹
EntityFrameworkCore
EF core 是一個輕量級的,可擴展的EF的跨平台版本。對於EF而言 EF core 包含許多提升和新特性,同時 EF core 是一個全新的代碼庫,並不如 EF6 那么成熟和穩定。
EF core 保持了和EF相似的開發體驗,大多數頂級API都被保留了下來,所以,如果你用過EF6,那么上手EF core你會覺得非常輕松和熟悉,EF core 構建在一套全新的核心組件上,這意味着EF core沒有從EF上繼承所有特性。一些特性會在未來的版本中發布(例如 延遲加載和彈性鏈接),其它一些不常用的特性不會在EF core中實現。
全新的,可擴展的,輕量級的EF core,允許我們添加一些在EF6中未實現的特性(例如 alternate keys,和在Linq中混合計算混合的數據庫)
安裝並配置
使用NuGet包管理工具下載ef Core
發一下文字 Microsoft.EntityFrameworkCore.SqlServer 方便小伙伴復制,
安裝這個的時候,會自動安裝所需依賴,裝完就可以盡情的使用EFCore了。
1.新建一個Model作為測試數據
2.新建Uitl文件夾存放EF相關的類,
新建Context
3.給Context進行注入
ASP.NET Core默認實現了DI,服務在啟動時進行注冊,通過構造函數的方式獲取。
打開Startup.cs, 注冊context
4修改配套的 DefaultConnection
打開appsettings.json文件
5.添加測試數據,生成數據庫結構
6.Startup中修改Configure方法,調用剛剛的方法
運行一下網站,可以看到數據庫和測試數據都已生成
注意: DbInitializer.cs 是為了程序運行,就進行生成數據庫,和表結構等, 手動建數據的可不用這樣操作。
使用EF Core
NET Core中默認自帶了依賴注入,所以我們在控制器中使用ef的時候 直接進行構造函數注入
依賴注入的有點大家都應該有所了解, 不需要去New一個Context,原來:
privite XxxContext db=new XxxContext();
現在:
打上斷點,我們就可以拿到user數據了。