NetCore-EFCore-DBfirst-同步數據庫生成Model

1.首先,說一下EFCore使用DBfist的基礎語法 。

dotnet ef dbcontext scaffold "Server=數據庫連接地址;Database=數據庫名

稱;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer 後續參數......

2.語法中的後續參數說明如下表。

 

簡寫 指令 說明
-d --data-annotations 該參數用於將模型配置,如果省略此選項,則使用僅 fluent API。
-c --context <NAME> 該參數指定DbContext類生成的名稱
  --context-dir <PATH> 該參數指定DbContext中的類文件, 路徑是相對於項目目錄,命名空間派生自文件夾名稱
-f --force 該參數用於覆蓋現有文件
-o --output-dir <PATH 該參數指定要將實體類文件放入的目錄, 路徑是相對於項目目錄
  --schema <SCHEMA_NAME>... 該參數指定要生成的實體類型的表架構。 若要指定多個架構,請重複--schema爲每個。 如果省略此選項,則包括所有架構
-t --table <TABLE_NAME> 該參數指定要生成的實體類型的表。 若要指定多個表,請重複-t或--table爲每個。 如果省略此選項,則包括所有表。
  --use-database-names 使用表和列名稱與數據庫中顯示的名稱完全一樣,請使用表和列的名稱。 如果省略了此選項,數據庫名稱將被更改爲更接近於C#名稱樣式約定。

 

3.有些人可能在參數中找不到生成視圖(View)的指令,我在開始也很困惑,後來找到了這個問題的解決方法,需要安裝aspnet-codegenerator來處理。

dotnet tool install -g dotnet-aspnet-codegenerator  //安裝aspnet-codegenerator

dotnet aspnet-codegenerator view --dataContext MyDbContext --model  //生成視圖對應的model

以上部分摘自官方文檔,詳情請參閱傳送門:https://docs.microsoft.com/zh-cn/ef/core/miscellaneous/cli/powershell

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章