這裏使用 MS SQLSERVER ,網上大多使用 SQLite
先來一個CodeFirst
新建項目
這裏我們選擇 ASP.NET Core Web Application (.NET Core)
這裏選擇web 應用程序,然後更改身份驗證 改爲 不進行身份驗證
然後再包管理控制檯裏執行下面兩條命令
引用 EntityFrameworkCore
Install-Package Microsoft.EntityFrameworkCore
再引用 EntityFrameworkCore.SqlServer
Install-Package Microsoft.EntityFrameworkCore.SqlServer
創建實體
我們在項目添加一個 Models 文件夾。
新建一個User.cs
public class User
{
public int Id { get; set; }
public string UserName { get; set; }
public string Password { get; set; }
}
這裏我爲了方便,繼續新建 DataContext.cs
public class DataContext : DbContext
{
public DataContext(DbContextOptions<DataContext> options)
: base(options)
{
}
public DbSet<User> Users { get; set; }
}
創建數據庫
打開 Startup.cs 在 ConfigureServices 下添加如下代碼:
public void ConfigureServices(IServiceCollection services) {
//這裏就是填寫數據庫的鏈接字符串 var connection = "Data Source=.;Initial Catalog=EFCore;User ID=sa;Password=sa.123"; services.AddDbContext<DataContext>(options => options.UseSqlite(connection)); // Add framework services. services.AddMvc(); }
添加好以後,我們來安裝 Microsoft.EntityFrameworkCore.Tools
Install-Package Microsoft.EntityFrameworkCore.Tools –Pre
在文件資源管理器中找到這個項目,找到 project.json文件
在 tools節點下 增加代碼
"Microsoft.EntityFrameworkCore.Tools": {
"version": "1.0.0-preview1-final",
"imports": [
"portable-net45+win8+dnxcore50",
"portable-net45+win8"
]
},
效果如下圖
之後 開始創建數據庫 使用 dotnet ef 命令
先打開cmd 窗口 ,跳轉到當前項目文件夾
輸入
dotnet ef migrations add MyFirstMigration
再輸入
dotnet ef database update
這樣數據庫就創建好了
注意 如果 IIS-Express 在運行中,你會遇到錯誤
CS2012: Cannot open 'MvcMovie/bin/Debug/netcoreapp1.0/MvcMovie.dll' for writing -- 'The process cannot access the file
'MvcMovie/bin/Debug/netcoreapp1.0/MvcMovie.dll'
because it is being used by another process.'
dotnet ef 命令
dotnet
(.NET Core) 是 .NET 的跨平臺實現。你可以在這裏瞭解它。dotnet ef migrations add Initial
運行 Entity Framework .NET Core CLI 遷移命令並創建初始化遷移。參數 "Initial" 可以是任意值,但是通常用這個作爲第一個(初始的) 數據庫遷移。這個操作創建了一個 *Data/Migrations/_Initial.cs* 文件,這個文件包含了添加(或刪除)Movie
表到數據庫的遷移命令。dotnet ef database update
dotnet ef database update 用我們剛剛創建的遷移來更新數據庫。