彩票走势图

Visual Studio 2019教程:使用Entity Framework处理数据

翻译|使用教程|编辑:陈津勇|2019-11-04 15:49:08.077|阅读 2763 次

概述:使用EF Core和Visual Studio 2019在ASP.NET Core应用程序中处理数据时,需先描述数据的模型,然后创建页面管理该模型。在创建完成后,还需通过一些测试步骤来测试该应用程序。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

下载Visual Studio正式版

请按照以下步骤开始在ASP.NET Core Web App中使用Entity Framework Core处理数据。

点击下方图片观看视频,然后继续向第一个ASP.NET Core应用添加数据。

QQ截图20191104152159.png

Visual Studio 2019教程:使用Entity Framework处理数据

打开项目

如果您要跟着视频一起学习,请打开在上一节中创建的Web应用程序项目。如果您从本节开始,则需要创建一个新项目,然后选择ASP.NET Web Application和Web Application,并将其余选项保留为默认值。

添加模型

在ASP.NET Core应用程序中使用数据时,要做的第一件事是描述数据的外观。我们称其为要解决的问题所涉及的事物的模型。在现实世界的应用程序中,我们将向这些模型添加自定义业务逻辑,让它们以某些方式运行并自动化任务。对于此示例,我们将创建一个用于跟踪棋盘游戏的简单系统。需要一个代表游戏的类,并包含一些想要记录的有关该游戏的属性,例如它可以支持多少玩家。此类将进入一个新文件夹,该文件夹将在Web项目的根目录中创建,命名为Models。

public class Game
{
    public int Id { get; set; }
    public string Title { get; set; }
    public int PublicationYear { get; set; }
    public int MinimumPlayers { get; set; }
    public int MaximumPlayers { get; set; }
}

创建页面来管理游戏库

现在,准备创建用于管理游戏库的页面,这个过程其实非常简单。首先,我们需要确定该功能在应用程序中的位置,打开Web项目中的Pages文件夹,然后在其中添加一个新文件夹,命名为Games。

现在,右键单击“Games”,然后选择Add > New Scaffolded Item。选择Entity Framework (CRUD) 选项。CRUD代表“创建、读取、更新、删除”,此模板将为每个操作创建页面(包括“list all”页面和“view details of one item”页面)。

vs2019-add-scaffold.png

选择游戏模型类,然后使用“+”图标添加新的数据上下文类,命名为AppDbContext。将其余的保留为默认值,然后单击添加。

您将看到以下“Razor Pages”添加到“Games”文件夹中:

  • Create.cshtml

  • Delete.cshtml

  • Details.cshtml

  • Edit.cshtml

  • Index.cshtml

除了在Games文件夹中添加页面之外,scaffolding操作还向Startup.cs类添加了代码。ConfigureServices查看此类中的方法时,将看到已添加以下代码:

services.AddDbContext(options =>
    options.UseSqlServer(Configuration.GetConnectionString("AppDbContext")));

同时,您还会发现AppDbContext连接字符串已被添加到项目的appsettings.json文件。

public static void Main(string[] args)
{
    var host = CreateWebHostBuilder(args).Build();

    using (var scope = host.Services.CreateScope())
    {
        var services = scope.ServiceProvider;

        try
        {
            var context = services.GetRequiredService();
            context.Database.EnsureCreated();
        }
        catch (Exception ex)
        {
            var logger = services.GetRequiredService();
            logger.LogError(ex, "An error occurred creating the DB.");
        }
    }

    host.Run();
}

要解析前面代码中的类型名,请将以下using语句添加到Program.cs的现有using语句块的末尾:

using Microsoft.Extensions.DependencyInjection;
using WebApplication1.Models;

确定在代码中使用项目名称而不是WebApplication1。

大多数代码仅用于错误处理,并在应用程序运行之前提供对EF Core AppDbContext的访问。重要的一行是表明context.Database.EnsureCreated()的那一行,如果数据库不存在,它将创建数据库。现在,这个应用程序就可以运行了。

测试程序

运行该应用程序,然后导航到地址栏中的/Games。您将看到一个空白列表页面。单击Create New将新Game添加到集合中。填写表格,然后点击Create,在列表视图中可以看到它。单击Details查看单个记录的详细信息。

添加另一条记录。您可以单击“Edit”更改记录的详细信息,或单击“Delete将其删除,在删除记录之前,系统将提示您确认操作。

vs2019-game-list.png

以上就是使用EF Core和Visual Studio 2019在ASP.NET Core应用程序中处理数据所需的全部步骤。

在下一节教程中,您将学习如何向应用程序添加Web API支持。



*想要获得 Visual Studio 更多资源或正版授权的朋友,可以咨询了解哦~


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@capbkgr.cn

文章转载自:

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP