dotnet aspnet-codegeneratordotnet aspnet-codegenerator

本文内容

作者:Rick Anderson

dotnet aspnet-codegenerator - 运行 ASP.NET Core 基架引擎。使用 dotnet aspnet-codegenerator 只需要从命令行搭建基架,不必使用 Visual Studio 搭建基架。

本文适用于:.NET Core 2.1 SDK 及更高版本。

安装 aspnet-codegeneratorInstalling aspnet-codegenerator

dotnet-aspnet-codegenerator 是必须安装的一个全局工具以下命令安装 dotnet-aspnet-codegenerator 工具的最新稳定版本:

  1. dotnet tool install -g dotnet-aspnet-codegenerator

以下命令将 dotnet-aspnet-codegenerator 更新到已安装的.NET Core SDK 提供的最新稳定版本:

  1. dotnet tool update -g dotnet-aspnet-codegenerator

摘要Synopsis

  1. dotnet aspnet-codegenerator [arguments] [-p|--project] [-n|--nuget-package-dir] [-c|--configuration] [-tfm|--target-framework] [-b|--build-base-path] [--no-build]
  2. dotnet aspnet-codegenerator [-h|--help]

描述Description

dotnet aspnet-codegenerator 全局命令运行 ASP.NET Core 代码生成器和基架引擎。

自变量Arguments

generator

要运行的代码生成器。以下是可用的生成器:

Generator操作
area搭建区域的基架
controller搭建控制器的基架
标识搭建标识的基架
razorpage搭建 Razor Pages 的基架
查看搭建视图的基架

选项Options

-n|—nuget-package-dir

指定 NuGet 包目录。

-c|—configuration {Debug|Release}

定义生成配置。默认值为 Debug

-tfm|—target-framework

要使用的目标框架例如 net46

-b|—build-base-path

生成基本路径。

-h|—help

打印出有关命令的简短帮助。

—no-build

运行前不生成项目。还将隐式设置 —no-restore 标记。

-p|—project <PATH>

指定要运行的项目文件的路径(文件夹名称或完整路径)。如果未指定,则默认为当前目录。

生成器选项Generator options

以下各节详细说明了受支持的生成器的可用选项:

  • 区域
  • 控制器
  • 标识
  • Razorpage
  • 视图

区域选项Area options

此工具适用于具有控制器和视图的 ASP.NET Core Web 项目。它不适用于Razor Pages 应用。

用法:dotnet aspnet-codegenerator area AreaNameToGenerate

前面的命令生成以下文件夹:

  • Areas
    • AreaNameToGenerate
      • Controllers
      • Data
      • Models
      • Views

控制器选项Controller options

下表列出了 aspnet-codegenerator``controllerrazorpage 的选项:

选项描述
—model 或 -m要使用的模型类。
—dataContext 或 -dc要使用的 DbContext 类。
—bootstrapVersion 或 -b指定启动版本。有效值为 34默认值为 4如果需要一个 wwwroot 目录而当前不存在,则创建一个,其中包含指定版本的启动文件。
—referenceScriptLibraries 或 -scripts在生成的视图中引用脚本库。向“编辑”和“创建”页面添加 _ValidationScriptsPartial
—layout 或 -l要使用的自定义布局页。
—useDefaultLayout 或 -udl使用视图的默认布局。
—force 或 -f覆盖现有文件。
—relativeFolderPath 或 -outDir生成文件的项目的相对输出文件夹路径。如果未指定,则会在项目文件夹中生成文件。

下表列出了对于 aspnet-codegenerator controller 是唯一的选项:

选项描述
—controllerName 或 -name控制器的名称。
—useAsyncActions 或 -async生成异步控制器操作。
—noViews 或 -nv不生成任何视图 。
—restWithNoViews 或 -api生成具有 REST 样式 API 的控制器。假设 noViews 并且忽略任何与视图相关的选项。
—readWriteActions 或 -actions不使用模型生成具有读/写操作的控制器。

使用 -h 开关获取 aspnet-codegenerator controller 命令方面的帮助:

  1. dotnet aspnet-codegenerator controller -h

请参阅搭建 movie 模型的基架,查看 dotnet aspnet-codegenerator controller 示例。

RazorpageRazorpage

可以通过指定新页面的名称和要使用的模板来单独搭建 Razor Pages 的基架。支持如下模板:

  • Empty
  • Create
  • Edit
  • Delete
  • Details
  • List

例如,以下命令使用 Edit 模板生成MyEdit.cshtml 和 MyEdit.cshtml.cs :

  1. dotnet aspnet-codegenerator razorpage MyEdit Edit -m Movie -dc RazorPagesMovieContext -outDir Pages/Movies

通常不指定模板和生成的文件名,而是创建以下模板:

  • Create
  • Edit
  • Delete
  • Details
  • List

下表列出了 aspnet-codegenerator``razorpagecontroller 的选项:

选项描述
—model 或 -m要使用的模型类。
—dataContext 或 -dc要使用的 DbContext 类。
—bootstrapVersion 或 -b指定启动版本。有效值为 34默认值为 4如果需要一个 wwwroot 目录而当前不存在,则创建一个,其中包含指定版本的启动文件。
—referenceScriptLibraries 或 -scripts在生成的视图中引用脚本库。向“编辑”和“创建”页面添加 _ValidationScriptsPartial
—layout 或 -l要使用的自定义布局页。
—useDefaultLayout 或 -udl使用视图的默认布局。
—force 或 -f覆盖现有文件。
—relativeFolderPath 或 -outDir生成文件的项目的相对输出文件夹路径。如果未指定,则会在项目文件夹中生成文件。

下表列出了对于 aspnet-codegenerator razorpage 是唯一的选项:

选项描述
—namespaceName 或 -namespace用于生成的 PageModel 的命名空间的名称
—partialView 或 -partial生成分部视图。如果指定此选项,将忽略布局选项 -l 和 -udl。
—noPageModel 或 -npm切换为不针对 Empty 模板生成 PageModel 类

使用 -h 开关获取 aspnet-codegenerator razorpage 命令方面的帮助:

  1. dotnet aspnet-codegenerator razorpage -h

请参阅搭建 movie 模型的基架,查看 dotnet aspnet-codegenerator razorpage 示例。

标识Identity

请参阅搭建标识的基架