Code First

Code First模式即“代码优先”模式,是从EF4.1开始新建加入的功能。使用Code First模式进行EF开发时只需要编写对应的数据类,然后自动生成数据库。

Code First使用案例如下。

1、创建一个控制台应用程序,添加两个类,学生类Student和科目成绩类SubjectScore

学生类Student

科目成绩类SubjectScore

定义了学生类和科目成绩类两个类之后,定义一个数据库上下文DbContext(System.Data.Entity.DbContext类可以对数据进行增删改查操作)

2、定义一个数据库上下文DbContext类

2.1使用NuGet添加安装EntityFramework包

2.2定义数据库上下文DbContext类,

2.3数据库上下文操作类如下:

3、运行项目,结果如下:

如果是第一次使用EF Code First,没有进行任何数据库配置,那么默认是保存到“.\SQLEXPRESS”数据库实例,如果未安装“.\SQLEXPRESS”则默认使用LocalDb,

可以在这里找到系统自动创建的数据库:

点击  vs的服务器管理器,在右上角有个 sql server 对象资源管理器,点击 sql server 对象资源管理器

或者查看app.config配置文件,也可以看到

4、如果需要指定的服务器上创建数据库,管理数据库的话,如本机的数据库实例,MyStudent数据库,那么这时需要配置App.Config中配置一个数据库连接串,然后在我们的数据库上下文中指定这个连接名称。

<connectionStrings>
<add name="MyStuDB" connectionString="Data Source=127.0.0.1;Database=MyStuDB;User ID=sa;PWD=123;" providerName="System.Data.SqlClient"></add>
</connectionStrings>

App.config配置文件:

修改数据库上下文

使用的时候修改

运行程序,结果

C#+EntityFramework编程方式详细之Code First的更多相关文章

  1. C#+EntityFramework编程方式详细之Code First 数据迁移

    在前几篇的C#+EntityFramework编程方式中介绍了C#+EntityFramework编程方式Code First ,Model First以及Dtatabase First 等编程方式, ...

  2. C#+EntityFramework编程方式详细之Model First

    Model First Model First模式即“模型优先”,这里的模型指的是“ADO.NET Entity Framework Data Model”,此时你的应用并没有设计相关数据库,在VS中 ...

  3. C#+EntityFramework编程方式详细之Database First

    Database First “Database First”模式即“数据库优先”,其实Database First 与Model First 很类似,只不过一个是有数据可一个是创建数据库,具体的操作 ...

  4. EF三种编程方式详细图文教程(C#+EF)之Code First

    Code First Code First模式我们称之为“代码优先”模式,是从EF4.1开始新建加入的功能.使用Code First模式进行EF开发时开发人员只需要编写对应的数据类(其实就是领域模型的 ...

  5. EF三种编程方式详细图文教程(C#+EF)之Database First

    Entity Framework4.1之前EF支持“Database First”和“Model First”编程方式,从EF4.1开始EF开始支持支持“Code First”编程方式,今天简单看一下 ...

  6. EF三种编程方式详细图文教程(C#+EF)之Model First

    Model First Model First我们称之为“模型优先”,这里的模型指的是“ADO.NET Entity Framework Data Model”,此时你的应用并没有设计相关数据库,在V ...

  7. EF三种编程方式的区别Database first ,Model first ,code first

    首先对于EF中先出现的datebase  first和model first两种编程方式,其的区别根据字面意思很容易能够理解. datebase  first就是代表数据库优先,那么前提就是先创建数据 ...

  8. Entity Framework 5.0系列之EF概览-三种编程方式

    概述 在开发面向数据的软件时我们常常为了解决业务问题实体.关系和逻辑构建模型而费尽心机,ORM的产生为我们提供了一种优雅的解决方案.ADO.NET Entity Framework是.NET开发中一种 ...

  9. uglifyjs压缩js文件(指令压缩/ 批量压缩/ 编程方式压缩)

    一.指令压缩 1.安装node,npm——详细见nodejs安装与使用入门 2.安装 uglifyjs——npm install -g uglify-js 3.压缩例子:1)uglifyjs  mai ...

随机推荐

  1. centos 6.8 搭建svn服务器

    1. yum remove subversion #卸载 svn服务 2.下载svn服务器安装包 yum -y install subversion 3.创建SVN版本库 mkdir -p /opt/ ...

  2. heapsort(Java)(最小堆)

    public static void main(String[] args) { Scanner input = new Scanner(System.in); int n = input.nextI ...

  3. EQueue

    EQueue 2.3.2版本发布(支持高可用) - dotNET跨平台 - CSDN博客https://blog.csdn.net/sD7O95O/article/details/78097193 E ...

  4. linux java 和jmeter 环境变量配置文件笔记(原)

    我在EC2 亚马逊的ubuntu系统下进行的配置,步骤如下(非常简单) 1.在/usr/local下分别新建java和jmeter文件夹,把下载的包进行解压 注:此处有坑,需注意ll -lht  查看 ...

  5. Linux命令(五)创建文件或修改文件时间 touch

    Linux中 touch 命令可以改变文档或目录时间, 包括存取时间或更改时间, 也可以用于创建新文件. 命令格式: touch [选项] [参数] 选项: -a   只更改文件的读取时间. -m   ...

  6. 三、调试IIS启动域名配置

    一.IIS配置启动VS以及域名 1.hosts配置 2.配置 注意: 1.Web和Api 端口在IIS都设置80即可,都可以同时运行不冲突,与vs的IIS express启动方式不同vs会指定不同的两 ...

  7. Python——Twisted框架(网络通信)

    一.简介 twisted是一个封装好的网络通信的库,可以帮助我们快速进行网络编程.注意,python3中,字符串必须转码成utf8的格式,否则无法发送.比如str("test"). ...

  8. 关于sha1加密与md5加密

    1.区别 Hash,一般翻译做"散列",也有直接音译为"哈希"的,就是把任意长度的输入,变换成固定长度的输出,该输出就是散列值.这种转换是一种压缩映射,也就是, ...

  9. 【XSY2962】作业 数学

    题目描述 有一个递推式: \[ \begin{align} f_0&=1-\frac{1}{e}\\ f_n&=1-nf_{i-1} \end{align} \] 求 \(f_n\) ...

  10. 2.2 collection 模块

    2.2.1 定义命名元祖 2.2.2 定义双端队列 2.2.3 定义有序的字典 2.2.4 定义有默认值的字典