はじめに
「MVCを生成する」とか言いながら、生成するのは「VC」だけです。
さて、.NETCore自体の構築及びDBとの導通については既に完了しているものとして進めます。
構築から始めたいという方はいくつかエントリーがありますので、探してみてください。
もしSQLServer以外で組みたいという方がいらっしゃいましたら以下のエントリーをどうぞ。
.NETCore3.1+MariaDB & Identity導入
DBの用意
DB+任意のTableを構築しておいてください。
Modelの実装
Models以下に任意のModelを用意しておいてください。
DbContextの実装
DbContextを用意しておいてください。
Pathは状況によって違うかもしれませんね。
packageの導入
cd your/work/directory
dotnet tool install -g dotnet-aspnet-codegenerator
dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design
いざ実行
dotnet aspnet-codegenerator controller -name YourController -m YourModel -dc YourDbContext -outDir YourDirectory -udl
コマンドは以下の解説を元にお好きにどうぞ。
Option | Name | Memo |
---|---|---|
-name | YourController | 作成されるコントローラ名。URLにもなるので、その点を意識して命名したい |
-m | YourModel | スキャフォールディング対象のModel名 |
-dc | YourDbContext | DbContext名 |
-outDir | YourDirectory | 新Controllerの生成先Directory。通常は「Controllers」で良い |
結果
何事もなければ指定した-outDir以下に新Controllerが、Views以下にCRUDのView群が、それぞれ自動生成される。
生まれたての段階でも速攻でDBに値を入れることもできる。
ひとりごと
Inputの不要なカラムの分までInput作ってくれたりするのでアレなとこはありますが、まま工数削減できるのではないでしょうか。
その辺はあらかじめModelに細工しておけば回避できるのかな?