首先要準備一下的工具做爲環境mysql
新建一個項目,NetMySQLCodeFirstweb
選擇MVC,再選擇無用戶驗證sql
而後經過NuGet包管理器安裝三個包,安裝最新穩定版本便可數據庫
緊接着在Models文件裏面新建一個類Lexanide
public Guid LexanID { get; set; } public string LexanName { get; set; } public int LexanAge { get; set; } public string LexanImage { get; set;
再繼續在Models文件裏面建一個類Category工具
public Guid CategoryID { get; set; } public string CategoryName { get; set; }
繼續在Models文件裏面建一個類CodeFirstContextui
public DbSet<Lexan> Lexans { get; set; } public DbSet<Category> Categories { get; set; }
在根目錄下修改Web.Config文件,並在system.web的標籤前面添加以下代碼,表示鏈接.Net 鏈接MySQL字符串,密碼是本身的root的登錄密碼,根據實際狀況修改spa
<connectionStrings> <add name="CodeFirstContext" connectionString="Data Source=localhost;port=3306; Initial Catalog=LexanCodeFirstDB;uid=root; pwd=******" providerName="MySql.Data.MySqlClient" /> </connectionStrings>
完成上面的工做之後,接下來作的工做就是在NuGet的控制檯去,更新咱們的數據庫代碼後的鏈接設置實現咱們經過LexanCodeFirstDb的數據庫名已啓用並將添加新的遷移。爲此, 咱們使用軟件包管理器控制檯。在控制檯執行以下命令3d
enable-migrations
這個時候由於執行了enable-migrations命令,項目中會自動的生成Migrations文件夾,而後到這個文件夾裏面去修改Configuration類裏面的Configuration方法,添加以下的代碼code
AutomaticMigrationsEnabled = true; SetSqlGenerator("MySql.Data.MySqlClient", new MySql.Data.Entity.MySqlMigrationSqlGenerator());
再繼續往NuGet的控制檯裏輸入一下代碼,執行數據的遷移,有提示輸入名字,這個名字和項目名字是不一樣的
add-migration
mysql的數據庫引擎代碼端使用默認建立的結構, 主鍵也會爲提到的區域返回此錯誤。做爲此解決方案, 咱們將再次升級咱們的上下文模型以下。之前, 相似於咱們在上面設置的 SqlGenerator, 而後去修改codeFirstContext類,以下所示
繼續在NuGet控制檯執行以下代碼更新數據庫
update-database
到這裏咱們的工做所有完成了,咱們看看沒有遷移時候MySQL數據
再來看看錢之後的數據庫
成功了!