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 : 58
Users Yesterday : 65
Users Last 7 days : 345
Users Last 30 days : 1395
Users This Month : 1346
Users This Year : 1346
Total Users : 95861
Views Today : 64
Views Yesterday : 76
Views Last 7 days : 423
Views Last 30 days : 1601
Views This Month : 1549
Views This Year : 1549
Total views : 133995
Who's Online : 0