zoukankan      html  css  js  c++  java
  • Intern Day78

    个人理解

    本人的理解就是:DbContext是C#用来连接数据库的,基于DbContext,我们可以不用对数据库本身进行操作,只需要在C#的编译环境里面直接操作数据库就行了。然后DbSet是我们用到多少个数据表就在C#的编译环境中新建多少个DbSet。DbSet与DbContext是多对一的关系。

    简单介绍

    首先DbContext和DbSet是属于EF Core下的内容,EF Core是属于ORM(对象关系映射)框架的一种,

    作用是:开发者只需操作.NET对象,不需要关注数据库的各种Sql语句,通过对OMR的操作,达到对数据库数据的增删改查的相关操作。

    (关于ORM的优缺点,可以参考:https://www.cnblogs.com/OFSHK/p/14519472.html

    DbContext类

    是域/实体类与数据库之间的桥梁。(可以和数据库通信,管理实体到数据库的映射模型,跟踪实体的更改。)

    通过DbContext去连接数据库(和数据库通信),DbContext封装与数据库和数据模型相关的功能(管理实体到数据库的映射模型),依据数据实体状态创建SQL命令,将数据更改保存到数据库中(跟踪实体的更改)。

    DbContext 表示与数据库的一次会话,EF Core中增删改查操作都基于该类。

    一般情况下,需要创建继承于 DbContext 的自定义类,然后通过该类进行数据库操作。 在实际开发项目中DbContext会结合Repository模式和Unit Of Work模式。

    DbSet

    用于增删改查操作的实体集 。DbSet是实体对象的集合,提供了实现CRUD的相应方法。

    public DbSet<Patient>Patients { get; set; } // DbContext中每一个表加一个DbSet
    // 新增几个DbSet<TEntity>属性用来表示实体集合
    
  • 相关阅读:
    Linux 高性能server编程——高级I/O函数
    中国儿童移动游戏市场解读 潜力巨大有待开发
    HDU 2152 Fruit (母函数)
    Currying vs Partial Application
    我的最爱Lambda演算——开篇
    函数式编程-数据结构+算法
    高阶函数 、高阶类型
    高阶函数-哈哈
    备份-泛函编程(23)-泛函数据类型-Monad
    高阶函数
  • 原文地址:https://www.cnblogs.com/OFSHK/p/14736030.html
Copyright © 2011-2022 走看看