学习ASP.NET Core Razor 编程系列三——创建数据表及创建项目基本页面

原文: 学习ASP.NET Core Razor 编程系列三——创建数据表及创建项目基本页面

学习ASP.NET Core Razor 编程系列目录

学习ASP.NET Core Razor 编程系列一

学习ASP.NET Core Razor 编程系列二——添加一个实体

 

一、创建脚本工具并执行初始迁移

       在本节中,您将使用包管理控制台(PMC)来更新数据库:

       •添加VisualStudio Web代码生成包。这个包是运行脚本引擎所必需的。

       • 执行Add-Migration Initial生成代码文件。

       • 执行Update-Database命名,更新数据库。

  1. 从菜单中选择“工具à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表。如下图。

 

 

二、创建书籍管理系统的增删改查页面

  1. 在Windows资源管理器中,选中项目所在的文件夹(文件夹中有Startup.cs文件,Program.cs文件和csproj文件),键盘上按钮“Shift”,鼠标右键—>“在此处打开命令窗口”,打开命令窗口。如下图。

 

          2.  命令窗口中输入以下命令

  • dotnet aspnet-codegenerator razorpage -m Book -dc BookContext -udl -outDir Pages\Books --referenceScriptLibraries

如果收到错误:

未找到与命令“dotnet aspnet codegenerator”匹配的可执行文件。如下图。

            

           3. 则请退出Visual Studio 2017 ,再次执行命令。

如果收到以下错误信息:

 

         则请更新Microsoft.VisualStudio.Web.CodeGeneration.Design到2.0.0。如果版本大于2.0,则请降到2.0.0。

 

          4. 再次执行命令。这次执行成功,如下图。

     

          5. 运行完毕后会在你的Page\Books文件夹中生成增删改查的cshtml。如下图。

     

三、下表详细介绍了ASP.NET的核心代码生成器`参数:

 

参数

说明

-m

实体类的名称。

-dc

数据上下文.

-udl

使用默认布局

-outDir

用于创建视图的相对输出文件夹路径

--referenceScriptLibraries

向“编辑”和“创建”页面添加 _ValidationScriptsPartial

                 使用 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 异常,则检查是否已运行迁移并更新了数据库。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ASP.NET Core Razor编程,列表模板页面是非常常见的。这些页面通常用于显示数据库或其他数据源的一组记录。 在本文,我将向您展示如何使用ASP.NET Core Razor列表模板页面。 首先,我们需要创建一个模型类来代表我们的数据。例如,假设我们正在构建一个博客应用程序,我们需要一个名为“Post”的模型类来表示博客文章。以下是一个示例模型类: ```csharp public class Post { public int Id { get; set; } public string Title { get; set; } public string Content { get; set; } public DateTime CreatedDate { get; set; } } ``` 接下来,我们需要创建一个控制器类来处理与“Post”模型类相关的操作。以下是一个示例控制器类: ```csharp public class PostController : Controller { private readonly ApplicationDbContext _context; public PostController(ApplicationDbContext context) { _context = context; } public IActionResult Index() { var posts = _context.Posts.ToList(); return View(posts); } } ``` 在此示例控制器,我们从数据库检索所有博客文章,并将它们传递给视图。 现在,我们需要创建一个视图来显示我们的博客文章列表。我们可以使用ASP.NET Core Razor模板引擎来创建一个动态模板,该模板可以将我们的博客文章显示为HTML表格。以下是一个示例视图: ```html @model IEnumerable<Post> <table> <thead> <tr> <th>Title</th> <th>Content</th> <th>Created Date</th> </tr> </thead> <tbody> @foreach (var post in Model) { <tr> <td>@post.Title</td> <td>@post.Content</td> <td>@post.CreatedDate.ToShortDateString()</td> </tr> } </tbody> </table> ``` 在此示例视图,我们使用了一个foreach循环遍历我们的博客文章,并将它们显示为HTML表格行。 最后,我们需要在控制器的Index方法返回视图。在我们的示例控制器,我们已经传递了一个包含所有博客文章的IEnumerable<Post>对象。我们可以将此对象传递给视图,如下所示: ```csharp public IActionResult Index() { var posts = _context.Posts.ToList(); return View(posts); } ``` 现在,当我们访问PostController的Index操作时,我们将看到一个包含所有博客文章的HTML表格。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值