加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET Core 配置 EF 框架服务 - ASP.NET Core 基础教程 - 简单

发布时间:2020-12-16 06:28:35 所属栏目:asp.Net 来源:网络整理
导读:原文:ASP.NET Core 配置 EF 框架服务 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 配置 EF 框架服务 上一章节中我们了解了 Entity Framework 的基本工作原理和? DbContext ?,我们也创建了一个自己的? HelloWorldDBContext 。 本章节我们就

原文:ASP.NET Core 配置 EF 框架服务 - ASP.NET Core 基础教程 - 简单教程,简单编程

ASP.NET Core 配置 EF 框架服务

上一章节中我们了解了 Entity Framework 的基本工作原理和?DbContext?,我们也创建了一个自己的?HelloWorldDBContext。 本章节我们就来讲讲如何设置我们的 EF 框架来链接到 SQLite 数据库

配置 EF 框架服务

要让我们的 EF 框架的 DBContext 能够运行起来,我们需要更改一下应用程序的配置

我们需要添加一个数据库连接字符串,以便我们的?HelloWorldDBContext?知道要去哪个服务器以及要查询哪个数据库

我们需要做以下工作:

  1. 将把数据库连接字符串保存在一个 JSON 的配置文件中
  2. 同样的,还需要在?Startup?类的?ConfigureServices?方法中添加 EF 服务
  3. EF 框架和 ASP.NET 和 MVC框架一样,都使用依赖注入。为了能够注入,运行时需要知道 EF 框架使用的各种服务
  4. 当然了,有一个简单的配置 API 可以用来添加我们需要的所有默认服务

好吧,开始吧

双击打开?AppSettings.json?文件,并添加以下数据库连接字符串

"database": { "connection": "Data Source=blogging.db" } 

添加完成后,AppSettings.json?文件全部内容如下

{
  "message":"Hello World!n你好,简单教程,你的网址是 www.twle.cn 吗?","database": { "connection": "Data Source=blogging.db" } } 

我们使用的是相对路径,在?SQLite?中使用相对路径时,路径将与应用程序的主程序集相关。

在我们的?HelloWorld?项目中,主要二进制文件是?bin/Debug/netcoreapp2.1/ConsoleApp.SQLite.dll,因此 SQLite 数据库将位于?bin/Debug/netcoreapp2.1/blogging.db?中

接下来,我们双击打开?Startup.cs?文件,转到?Startup

我们需要为 Entity Framework Core 添加一些额外的服务才能正常工作

具体来说,我们需要做的两件事情:

  1. 添加与 SQLite 相关的 EF 框架服务
  2. 告诉 EF 框架我们的 DBContext 是哪个类

所有这些都可以通过在?IServiceCollection?上使用扩展提供的方法来完成,如以下程序中所示

public void ConfigureServices(IServiceCollection services) { services.AddMvc(); services.AddEntityFrameworkSqlite() .AddDbContext<HelloWorldDBContext> (options => options.UseSqlite(Configuration["database:connection"])); } 

由于 EF 框架可以兼容和处理不同类型的数据库,包括非关系数据库,我们需要告知 EF 实体框架添加 SQLite 相关的服务

然后还需要通过?AddDbContext()?方法告诉 EF 框架我们的 DBContext 类,方便它可以适当地构造该类的实例

AddDbContext()?方法 接受一个泛型类型参数,我们指定了?DBContext?派生类的类型?HelloWorldDbContext

在?AddDbContext()?方法中,我们需要设置我们的?DBContext?的选项

设置选项可以通过?lambda表达式?来完成,我们所需要做的就是告诉 EF 框架我们的 DBContext 将转到 UseSqlite

到此为止,我们的配置 EF 框架服务工作总算是完成了,接下来我们将学习如何设置数据库,迁移数据库

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读