dotnet aspnet-codegenerator
dotnet aspnet-codegenerator
- 运行 ASP.NET Core 基架引擎。 使用 dotnet aspnet-codegenerator
只需要从命令行搭建基架,不必使用 Visual Studio 搭建基架。
安装和更新 aspnet-codegenerator
安装 .NET SDK。
dotnet aspnet-codegenerator
是必须安装的一个全局工具。 以下命令安装 dotnet aspnet-codegenerator
工具的最新稳定版本:
dotnet tool install -g dotnet-aspnet-codegenerator
注意
默认情况下,要安装的 .NET 二进制文件的体系结构表示当前运行的 OS 体系结构。 若要指定不同的 OS 体系结构,请参阅 dotnet tool install, --arch option。 有关详细信息,请参阅 GitHub 问题 dotnet/AspNetCore.Docs #29262。
以下命令将 dotnet aspnet-codegenerator
更新到已安装的.NET Core SDK 提供的最新稳定版本:
dotnet tool update -g dotnet-aspnet-codegenerator
卸载 aspnet-codegenerator
可能需要卸载 aspnet-codegenerator
才能解决问题。 例如,如果安装了 aspnet-codegenerator
的预览版本,请在安装发布版本之前卸载它。
以下命令卸载 dotnet aspnet-codegenerator
工具并安装最新稳定版本:
dotnet tool uninstall -g dotnet-aspnet-codegenerator
dotnet tool install -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 | 搭建控制器的基架 |
标识 | 构建 Identity |
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>
指定要运行的项目文件的路径(文件夹名称或完整路径)。 如果未指定,则默认为当前目录。
生成器选项
以下各节详细说明了受支持的生成器的可用选项:
- 区域
- 控制器
- Identity
- Razorpage
- 视图
区域选项
此工具适用于具有控制器和视图的 ASP.NET Core Web 项目。 它不适用于 Razor Pages 应用。
用法:dotnet aspnet-codegenerator area AreaNameToGenerate
前面的命令生成以下文件夹:
- Areas
- AreaNameToGenerate
- Controllers
- Data
- Models
- Views
- AreaNameToGenerate
控制器选项
下表列出了 aspnet-codegenerator
、razorpage
、controller
和 view
的选项:
选项 | 说明 |
---|---|
--model 或 -m | 要使用的模型类。 |
--dataContext 或 -dc | 要使用的 DbContext 类或要生成的类的名称。 |
--bootstrapVersion 或 -b | 指定启动版本。 有效值为 3 or 4 进行求值的基于 SQL 语言的筛选器表达式。 默认为 4 。 如果需要一个 wwwroot 目录而当前不存在,则创建一个,其中包含指定版本的启动文件。 |
--referenceScriptLibraries 或 -scripts | 在生成的视图中引用脚本库。 向“编辑”和“创建”页面添加 _ValidationScriptsPartial 。 |
--layout 或 -l | 要使用的自定义布局页。 |
--useDefaultLayout 或 -udl | 使用视图的默认布局。 |
--force 或 -f | 覆盖现有文件。 |
--relativeFolderPath 或 -outDir | 指定需要生成文件的项目的相对输出文件夹路径,如果未指定,将在项目文件夹中生成文件 |
--useSqlite 或 -sqlite | 标记来指定 DbContext 是否应使用 SQLite,而不是 SQL Server。 |
下表列出了 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
示例。
Razorpage
可以通过指定新页面的名称和要使用的模板来单独搭建 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
和 view
的选项:
选项 | 说明 |
---|---|
--model 或 -m | 要使用的模型类。 |
--dataContext 或 -dc | 要使用的 DbContext 类或要生成的类的名称。 |
--bootstrapVersion 或 -b | 指定启动版本。 有效值为 3 or 4 进行求值的基于 SQL 语言的筛选器表达式。 默认为 4 。 如果需要一个 wwwroot 目录而当前不存在,则创建一个,其中包含指定版本的启动文件。 |
--referenceScriptLibraries 或 -scripts | 在生成的视图中引用脚本库。 向“编辑”和“创建”页面添加 _ValidationScriptsPartial 。 |
--layout 或 -l | 要使用的自定义布局页。 |
--useDefaultLayout 或 -udl | 使用视图的默认布局。 |
--force 或 -f | 覆盖现有文件。 |
--relativeFolderPath 或 -outDir | 指定需要生成文件的项目的相对输出文件夹路径,如果未指定,将在项目文件夹中生成文件 |
--useSqlite 或 -sqlite | 标记来指定 DbContext 是否应使用 SQLite,而不是 SQL Server。 |
下表列出了 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
示例。
查看
可以通过指定视图的名称和要使用的模板来单独搭建视图。 支持如下模板:
Empty
Create
Edit
Delete
Details
List
例如,以下命令使用 Edit 模板生成 MyEdit.cshtml
:
dotnet aspnet-codegenerator view MyEdit Edit -m Movie -dc MovieContext -outDir Views/Movies
下表列出了 aspnet-codegenerator
、razorpage
、controller
和 view
的选项:
选项 | 说明 |
---|---|
--model 或 -m | 要使用的模型类。 |
--dataContext 或 -dc | 要使用的 DbContext 类或要生成的类的名称。 |
--bootstrapVersion 或 -b | 指定启动版本。 有效值为 3 or 4 进行求值的基于 SQL 语言的筛选器表达式。 默认为 4 。 如果需要一个 wwwroot 目录而当前不存在,则创建一个,其中包含指定版本的启动文件。 |
--referenceScriptLibraries 或 -scripts | 在生成的视图中引用脚本库。 向“编辑”和“创建”页面添加 _ValidationScriptsPartial 。 |
--layout 或 -l | 要使用的自定义布局页。 |
--useDefaultLayout 或 -udl | 使用视图的默认布局。 |
--force 或 -f | 覆盖现有文件。 |
--relativeFolderPath 或 -outDir | 指定需要生成文件的项目的相对输出文件夹路径,如果未指定,将在项目文件夹中生成文件 |
--useSqlite 或 -sqlite | 标记来指定 DbContext 是否应使用 SQLite,而不是 SQL Server。 |
下表列出了 aspnet-codegenerator view
独有的选项:
选项 | 说明 |
---|---|
--controllerNamespace 或 -namespace | 指定用于生成的控制器的命名空间的名称 |
--partialView 或 -partial | 生成部分视图,如果指定了此选项,则将忽略其他布局选项(-l 和 -udl) |
使用 -h
开关获取 aspnet-codegenerator view
命令方面的帮助:
dotnet aspnet-codegenerator view -h
Identity
请参阅基架Identity
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈