mysql為什么自動生成表?
右鍵點擊引用--管理NuGet程序包,搜索Mysql.Data.Entity并安裝,安裝完成后在已安裝選項下會有以下三項:
?
在App.config文件中添加:
2.分別新建實體類Person,配置類PersonConfig,上下文類MyDbContext
?
?
注:因為Name是string類型,映射到mysql中是longtext,而mysql支持最大長度為767bytes,所以要限制長度。
?
?
3.單擊程序包管理器控制臺
輸入:EntityFramework\Enable-Migrations并回車
?
在項目下會自動創建一個Migrations文件夾
?
4.輸入EntityFramework\Add-Migration InitModel 注:InitModel為本次遷移的名字,可自定義修改
會提示錯誤
?
因為vs默認配置的是sqlserver數據庫,所以我們要手動更改為啟動mysql的sql生成器
在Migration文件夾中的配置類Congifuration的構造方法中:
?
同時還要在上下文類中配置mysql
?
再次輸入命令
?
5.輸入命令EntityFramework\Update-Database -v
?
在數據庫中刷新,已經創建好表了