学习ASP.NET Core Razor 编程系列目录
学习ASP.NET Core Razor 编程系列二——添加一个实体
一、创建脚本工具并执行初始迁移
在本节中,您将使用包管理控制台(PMC)来更新数据库:
•添加VisualStudio Web代码生成包。这个包是运行脚本引擎所必需的。
• 执行Add-Migration Initial生成代码文件。
• 执行Update-Database命名,更新数据库。
- 从菜单中选择“工具àNuGet包管理器器—>程序包管理器控制台”菜单。
2. 在PMC中,输入以下命令:
1) Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design,如下图。
2) 上面的命令执行完毕之后,输入 Add-Migration Initial。如下图。
3. 在上面的命令执行完毕之后,会在项目中增加Migrations目录和用于创建初始数据库的代码,如下图。这些代码是基于DbContext指定的模型(在Models/ BookCntext.cs)。初始参数用于命名迁移。您可以修改成任何名称,但按惯例您可以选择描述迁移的名称。
4. 在上面的命令执行完毕之后,输入Update-Database,这个命令通过运行Migrations / <time-stamp>_Initial.cs文件,创建数据库表。执行过程如下图。
5. 执行结束之后,会在数据库中创建Book表。如下图。
二、创建书籍管理系统的增删改查页面
- 在Windows资源管理器中,选中项目所在的文件夹(文件夹中有Startup.cs文件,Program.cs文件和csproj文件),键盘上按钮“Shift”,鼠标右键—>“在此处打开命令窗口”,打开命令窗口。如下图。
2. 命令窗口中输入以下命令
- dotnet aspnet-codegenerator razorpage -m Book -dc BookContext -udl -outDir PagesBooks --referenceScriptLibraries
如果收到错误:
未找到与命令“dotnet aspnet codegenerator”匹配的可执行文件。如下图。
3. 则请退出Visual Studio 2017 ,再次执行命令。
如果收到以下错误信息:
则请更新Microsoft.VisualStudio.Web.CodeGeneration.Design到2.0.0。如果版本大于2.0,则请降到2.0.0。
4. 再次执行命令。这次执行成功,如下图。
5. 运行完毕后会在你的PageBooks文件夹中生成增删改查的cshtml。如下图。
三、下表详细介绍了ASP.NET的核心代码生成器`参数:
参数 |
说明 |
-m |
实体类的名称。 |
-dc |
数据上下文. |
-udl |
使用默认布局 |
-outDir |
用于创建视图的相对输出文件夹路径 |
--referenceScriptLibraries |
向“编辑”和“创建”页面添加 |
使用 h
开关获取 aspnet-codegenerator razorpage
命令方面的帮助:
在命令窗口中输入以下命令:
dotnet aspnet-codegenerator razorpage -h
四、 测试应用程序
1. 在Visual Studio 2017中按下F5,运行应用程序。如下图。
2. 在浏览器中的地址栏中的url的未尾添加/Books(http://localhost:53416/Books)。如下图。
3. 点击“Create New”链接,在新建界面中把信息录入,然后点击“Create”按钮。
4.浏览器中页面返回到列表页面,如下图。
5. 在书籍列表中,选择一本书籍,然后点击“Edit”链接。如下图。
6. 在编辑界面中进行信息修改,然后点击保存。如下图。
7. 在书籍列表中,选择一本书籍,然后点击“Details”链接。如下图。
8. 在书籍列表中,选择一本书籍,然后点击“Delete”链接。如下图。
注:如果收到 SQL 异常,则检查是否已运行迁移并更新了数据库。