Visual Studio ASP.net MVCには、DBをScaffoldしてCRUDのページを自動作成する機能があったが、dotnet core(.NET)でも、同等の機能があったので、メモ。
dotnetのCLIでDBをScaffoldしてCRUDページを作成するには、aspnet-codegeneratorツールのインストールが必要。
下記で、ツールをインストールしておく。
dotnet tool install dotnet-aspnet-codegenerator -gちなみに、このツールを動かすためには、プロジェクトにMicrosoft.EntityFramework.SQLServerかMicrosoft.EntityFramework.Sqliteパッケージの追加が必要。(ツールがMemory上にテンポラリのDBを作成して使用するようだ)
ツールを動作させる前にDbContextが必要になるので、DBのScaffolding等で作成しておく。
次に、下記コマンドを実行する。(Razorページの場合の例。ツール実行にSQLServerではなく、Sqliteを使用する場合は -sqliteも必要)
dotnet aspnet-codegenerator razorpage -m <モデル(エンティティ)名> -dc <コンテキスト名> -outDir Pages/<出力先ディレクトリ> -scripts指定したフォルダにCURDページが作成される。ちなみに、指定しない場合、ネームスペースはディレクトリ名と同様となる。
作成されたページを表示させるためには、Startup.csのConfigureServicesメソッドに、下記のようにDbContextを追加する。
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<Dbコンテキスト名>();
services.AddRazorPages();
}実際にページを表示してみると、以下のような感じになる。





ちなみに、文字列の最大長や入力レンジ,入力必須などのチェックはモデルに属性を付けておけば、自動的に行ってくれる。
暫定的なメンテナンス画面が欲しい時などには使えるかな。






Users Today : 39
Users Yesterday : 44
Users Last 7 days : 233
Users Last 30 days : 1002
Users This Month : 842
Users This Year : 15668
Total Users : 93472
Views Today : 50
Views Yesterday : 53
Views Last 7 days : 288
Views Last 30 days : 1274
Views This Month : 1050
Views This Year : 21255
Total views : 131190
Who's Online : 0