91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET的EF Core遷移怎么實現

發布時間:2021-12-06 14:20:07 來源:億速云 閱讀:190 作者:iii 欄目:大數據

這篇文章主要介紹“ASP.NET的EF Core遷移怎么實現”,在日常操作中,相信很多人在ASP.NET的EF Core遷移怎么實現問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”ASP.NET的EF Core遷移怎么實現”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

當你開發一個新的應用程序的時候,你的模型頻繁的變化,而每一次的數據模型的改變,將使它與數據庫不同步。你通過配置EF Core,使得數據庫不存在時創建數據庫。每一次改變數據模型(增刪改 實體類或者改變DbContextClass),可以刪除數據庫然后重新創建一個與數據模型相匹配的數據庫,然后填充測試數據。

這種保持數據模型與數據庫同步的方法能夠工作得很好,然后卻不適用于將應用程序發布到產品中的階段。當應用程序在真實的產品的時候,通常產品中包含有你需要保留的數據,在模型改變的時候(比如增加一個新列),你不希望丟失任何數據。EF Core 遷移功能能夠解決這個問題,它能使EF更新數據庫的結構而不用重新創建一個新的數據庫。

為了能夠使用遷移,你可以使用 Package Manager Console(PMC)或者command-line interface(CLI 命令行)。

用于CLI的EF工具 是在 Microsoft.EnrityFrameworkCore.Tools工具包中提供,對于 vs 15.7的版本,已經默認添加到了MVC模板中的 Microsoft.AspNetCore.App 包中。不用像官方教程介紹的,需要手工添加。

 <PackageReference Include="Microsoft.AspNetCore.App" />

更改連接字符串

更改appsettings.josn文件中數據庫連接字符串中的數據庫名稱為以前未使用的過名稱。這樣的改變使項目能使用 first migration 創建一個新的數據庫。這并不是一個開始使用遷移必需的操作,但你會看到這是一個好主意。

另外一個方法是從SSOX(SQL Server Object Exporer SQL對象資源管理器)或CLI中刪除數據庫。

刪除數據庫的CLI命令是:dotnet ef database drop

創建初始化遷移
在解決方案管理器中,右鍵 項目文件夾----在彈出的菜單中選擇 在文件資源管理器 中打開--------在地址欄輸入cmd.

在控制臺窗口中輸入:dotnet ef migrations add InitialCreate 

EF產生的代碼會從頭開始創建數據庫。

會在解決方案管理器中 建立一個Migrations 文件夾,在其中,有一個同名加時間戳的cs文件。Up方法創建與數據模型實體集對應的數據庫表格,down方法刪除它們。

如果你創建初始化遷移的時候,數據庫已經存在。創建數據庫的代碼依然會生成但是它不會運行,因為數據庫已經與數據模型相匹配。當你發布一個應用到另外一個環境的時候,數據庫不存在,此代碼將會創建數據庫,所以,這是一個好的主意先來測試它。

數據模型快照(Data Model snashot)

 遷移創建了現有數據庫結構的快照。當你增加一個遷移,通過對比數據模型和快照文件,決定改變了什么。

刪除遷移的控制臺命令是 dotnet ef migrations remove ,會刪除遷移和保證快照 被正確的重置。

應用遷移到數據庫

應用遷移更新數據庫的CLI:dotnet ef database update

數據庫中的EFMigrationsHistory表 會跟蹤哪些遷移被應用到數據庫。

到此,關于“ASP.NET的EF Core遷移怎么實現”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

营口市| 冷水江市| 德江县| 漠河县| 贞丰县| 贺州市| 吴川市| 文水县| 台安县| 四会市| 浮山县| 铜川市| 胶南市| 基隆市| 金乡县| 浦江县| 姚安县| 天长市| 江北区| 盐池县| 古交市| 桐乡市| 长沙市| 高要市| 江孜县| 腾冲县| 宁明县| 孝昌县| 红河县| 万宁市| 眉山市| 邵武市| 辽宁省| 吉木萨尔县| 子洲县| 绿春县| 射阳县| 本溪| 南漳县| 洪泽县| 天津市|