dotnet aspnet-codegenerator
- 运行 ASP.NET Core 基架引擎。 使用 dotnet aspnet-codegenerator
只需要从命令行搭建基架,不必使用 Visual Studio 搭建基架。
本文适用于:.NET Core 2.1 SDK 及更高版本。
dotnet-aspnet-codegenerator
是必须安装的一个全局工具。 以下命令安装 dotnet-aspnet-codegenerator
工具的最新稳定版本:
dotnet tool install -g dotnet-aspnet-codegenerator
以下命令将 dotnet-aspnet-codegenerator
更新到已安装的.NET Core SDK 提供的最新稳定版本:
dotnet tool update -g dotnet-aspnet-codegenerator
dotnet aspnet-codegenerator [arguments] [-p|--project] [-n|--nuget-package-dir] [-c|--configuration] [-tfm|--target-framework] [-b|--build-base-path] [--no-build] dotnet aspnet-codegenerator [-h|--help]
dotnet aspnet-codegenerator
全局命令运行 ASP.NET Core 代码生成器和基架引擎。
generator
要运行的代码生成器。 以下是可用的生成器:
Generator | 操作 |
---|---|
area | 搭建区域的基架 |
controller | 搭建控制器的基架 |
标识 | 搭建标识的基架 |
razorpage | 搭建 Razor Pages 的基架 |
查看 | 搭建视图的基架 |
-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>
指定要运行的项目文件的路径(文件夹名称或完整路径)。 如果未指定,则默认为当前目录。
以下各节详细说明了受支持的生成器的可用选项:
此工具适用于具有控制器和视图的 ASP.NET Core Web 项目。 它不适用于Razor Pages 应用。
用法:dotnet aspnet-codegenerator area AreaNameToGenerate
前面的命令生成以下文件夹:
下表列出了 aspnet-codegenerator
controller
和 razorpage
的选项:
选项 | 说明 |
---|---|
--model 或 -m | 要使用的模型类。 |
--dataContext 或 -dc | 要使用的 DbContext 类。 |
--bootstrapVersion 或 -b | 指定启动版本。 有效值为 3 或 4 。 默认值为 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
命令方面的帮助:
dotnet aspnet-codegenerator controller -h
请参阅搭建 movie 模型的基架,查看 dotnet aspnet-codegenerator controller
示例。
可以通过指定新页面的名称和要使用的模板来单独搭建 Razor Pages 的基架。 支持如下模板:
Empty
Create
Edit
Delete
Details
List
例如,以下命令使用 Edit 模板生成MyEdit.cshtml 和 MyEdit.cshtml.cs :
dotnet aspnet-codegenerator razorpage MyEdit Edit -m Movie -dc RazorPagesMovieContext -outDir Pages/Movies
通常不指定模板和生成的文件名,而是创建以下模板:
Create
Edit
Delete
Details
List
下表列出了 aspnet-codegenerator
razorpage
和 controller
的选项:
选项 | 说明 |
---|---|
--model 或 -m | 要使用的模型类。 |
--dataContext 或 -dc | 要使用的 DbContext 类。 |
--bootstrapVersion 或 -b | 指定启动版本。 有效值为 3 或 4 。 默认值为 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
命令方面的帮助:
dotnet aspnet-codegenerator razorpage -h
请参阅搭建 movie 模型的基架,查看 dotnet aspnet-codegenerator razorpage
示例。
请参阅搭建标识的基架