这两天比较忙,写的会慢一点。

我们以控制台演示 EF Core的链接数据库

首先创建控制台程序

创建数据上下文类

EntityTable

 /// <summary>
/// 继承 DbContext 数据上下文类
/// 命名空间 using Microsoft.EntityFrameworkCore;
/// </summary>
public class EntityTable : DbContext
{ //在DbContext的构造函数中我们可以接受一个DbContextOptions对象,
//这个主要用在当在DI容器中创建DbContext实例时会用到,当然它也能被显式调用,通过创建DbCOntextOptions对象来与上下文隔离
//所以用它可以为每一个上下文的实例使用相同的options,如下:
public EntityTable(DbContextOptions options) : base(options)
{ }
public DbSet<User> User { get; set; }
}
public class User
{
[Key]
public int ID { get; set; }
public String Name { get; set; }
public String Age { get; set; }
}

新建Json配置文件:注意一定要把 Json文件属性改为“始终复制“不然重新生成是Debug文件不会生成,程序读取不到

Json 内容

{
"ConnectionStrings": {
"SqlServer": "Data Source=DESKTOP-O9UM2R2;Initial Catalog=FirstDB;Persist Security Info=True;User ID=sa;Pwd=su;"
}
}

读取Json 文件  链接数据库 读取User表数据

            var BuilderAppStting = new ConfigurationBuilder();
BuilderAppStting.AddJsonFile("json1.json");//加载Json文件
//取出所有配置节点Key
var Configuration = BuilderAppStting.Build();
//重新创建生成数据上下文EntityTable 类的实例
var builder = new DbContextOptionsBuilder<EntityTable>();
//这里的读取配置的方法 把GetSection的工作一次性做完 关于 GetSection在上一篇文中已经体现过
builder.UseSqlServer(Configuration.GetConnectionString("SqlServer")); //如果数据库不存 重新实例化 数据上下文类
// EFConfigProvider eFConfigProvider = new EFConfigProvider(builder); using (var dbContext = new EntityTable(builder.Options))
{
// Migrate() 将上下文的任何挂起的迁移应用到数据库。将创建
//如果还不存在数据库,则为数据库。
//请注意,此API与DbContext.Database.EnsureCreated()互斥。
//EnsureCreated不使用迁移来创建数据库,因此
//创建的数据库以后不能使用迁移更新。
dbContext.Database.Migrate();
// EnsureCreated()确保上下文的数据库存在。如果存在,则不进行操作
//拿.如果不存在,则创建数据库及其所有模式。
//如果数据库存在,则不必努力确保它与
//此上下文的模型。
//注意,此API不使用迁移来创建数据库。此外,
//创建的数据库不能使用迁移稍后更新。如果你
//针对关系数据库和应用迁移,你可以使用DbContext migrate()。数据库。
//方法以确保创建数据库并应用所有迁移。
//dbContext.Database.EnsureCreated();
User ss= dbContext.User.Where(x => x.ID == ).SingleOrDefault(); dbContext.User.ToList().ToString();

读取第一条数据

项目中还有两个类 总感觉描述的不是很清晰 包括另一种实现EF的方式 还需要加强。

AspNet Core :创建自定义 EF Core 链接数据库的更多相关文章

  1. Abp vNext 自定义 Ef Core 仓储引发异常

    问题 在使用自定义 Ef Core 仓储和 ABP vNext 注入的默认仓储时,通过两个 Repository 进行 Join 操作,提示 Cannot use multiple DbContext ...

  2. EF Core 快速上手——EF Core的三种主要关系类型

    系列文章 EF Core 快速上手--EF Core 入门 本节导航 三种数据库关系类型建模 Migration方式创建和习修改数据库 定义和创建应用DbContext 将复杂查询拆分为子查询   本 ...

  3. EF Core 快速上手——EF Core 入门

    EF Core 快速上手--EF Core 介绍 本章导航 从本书你能学到什么 对EF6.x 程序员的一些话 EF Core 概述 1.3.1 ORM框架的缺点 第一个EF Core应用   本文是对 ...

  4. Asp.net core下利用EF core实现从数据实现多租户(1)

    前言 随着互联网的的高速发展,大多数的公司由于一开始使用的传统的硬件/软件架构,导致在业务不断发展的同时,系统也逐渐地逼近传统结构的极限. 于是,系统也急需进行结构上的升级换代. 在服务端,系统的I/ ...

  5. Asp.net core下利用EF core实现从数据实现多租户(3): 按Schema分离 附加:EF Migration 操作

    前言 前段时间写了EF core实现多租户的文章,实现了根据数据库,数据表进行多租户数据隔离. 今天开始写按照Schema分离的文章. 其实还有一种,是通过在数据表内添加一个字段做多租户的,但是这种模 ...

  6. ASP.NET Core 中使用EF Core 将实体映射到数据库表的方法(SQL Server)

    前段时间听过一个关于使用ASP.NET Core建立项目的视频.其中使用EF Core映射到数据库的部分是按部就班地学习.今天自己建立项目时,有些步骤已经有一些遗忘.所以写下这篇文章,顺便理清思路. ...

  7. Asp.net core 学习笔记 ( ef core )

    更新 : 2018-11-26 这里记入一下关于 foreignKey cascade action 默认情况下如果我们使用 data annotation required + foreginkey ...

  8. Asp.net core 学习笔记 ( ef core transaction scope & change level )

    ef core 有 unit of work 的概念,当我们 save change 时会自动使用 transaction 确保更新的一致性. 隔离级别是默认的 read committed 不允许脏 ...

  9. Asp.net core下利用EF core实现从数据实现多租户(2) : 按表分离

    前言 在上一篇文章中,我们介绍了如何根据不同的租户进行数据分离,分离的办法是一个租户一个数据库. 也提到了这种模式还是相对比较重,所以本文会介绍一种更加普遍使用的办法: 按表分离租户. 这样做的好处是 ...

随机推荐

  1. C++ 设计模式 开放封闭原则 简单示例

    C++ 设计模式 开放封闭原则 简单示例 开放封闭原则(Open Closed Principle)描述 符合开放封闭原则的模块都有两个主要特性: 1. 它们 "面向扩展开放(Open Fo ...

  2. Leetcode题解(22)

    66. Plus One 题目 这题很简单,直接代码: class Solution { public: vector<int> plusOne(vector<int> &am ...

  3. javascript创建css、js,onload触发callback兼容主流浏览器的实现

    http://www.fantxi.com/blog/archives/load-css-js-callback/ 由于需要写个函数,既可以加载css,又可以加载js,所以对各主流浏览器对加载js.c ...

  4. filereader api 类型

    filereader类似XMLHttpRequest,只是它用来从文件系统读取文件,提供了不同的方法去读取文件数据:1.readAsText2.readAsDataURL3.readAsBinaryS ...

  5. 大家好,我是ZCDHJ

    大家好,我是ZCDHJ.CJ C2017级的一名Oier.

  6. 深入理解java虚拟机_第二章_读书笔记

    1.本章内容目录: 概述 运行时数据区域 程序计数器 java虚拟机栈 本地方法栈 java堆 方法区 运行时常量池 直接内存 HotSpot虚拟机对象探秘 对象的创建 对象的内存布局 对象的访问定位 ...

  7. MyEclipse下安装FatJar打包工具

    方法一:help > software updates > Find and install > add > add remote site name:FatJar url:h ...

  8. 如何在ASP.NET Core Web API测试中使用Postman

    使用Postman进行手动测试 如果您是开发人员,测试人员或管理人员,则在构建和使用应用程序时,有时了解各种API方法可能是一个挑战. 使用带有.NET Core的Postman为您的Web API生 ...

  9. 最小化安装linux CentOS_7操作系统

    实验环境为VMware虚拟机安装操作系统. 1.打开VMware Workstation 虚拟机,选择创建新的虚拟机: 2.选择linux-CentOS 64位操作系统: 3.为虚拟机命名,并选择安装 ...

  10. mybatis逆向工程使用步骤详解

    使用mybatis生成逆向工程的详细步骤,我个人感觉这个是最简单的一个了,虽然网上有很多种的方法来生成逆向工程,可是这个方法最简单.在这里我是使用maven搭建的环境,但是在正常的环境下也是一样的.步 ...