一、EntityFramework介绍

1.ORM:Object Relation Mapping,用操作对象的方式来操作数据库

2.ORM工具有很多,其中Dapper、PetaPoco、NHibernate,Entity Framework都是通过ORM方式进行实现操作数据库

3.Entity Framework底层仍然是对ADO.Net的封装。EF支持SQL Server、Mysql、Oracle等主流数据库。

4.EF有三种创建方法:

(1)DataBase First(数据库优先)

(2)Model First(模型优先)

(3)Code First(代码优先)

二、EntityFramework的使用

1.使用EF连接数据库步骤

步骤一:创建表

步骤二:安装EntityFramework组件

步骤三:在App.config配置连接数据库的字符串

<connectionStrings>

<add name="conn1" connectionString ="Data Source=.;Initial Catalog=Test;User ID=sa;Password=123456" providerName="System.Data.SqlClient"/>

</connectionStrings>

步骤四:创建与表对应的模型类

步骤四:创建一个类,继承DbContext类

步骤五:增删查改操作

2.EF模型的两种配置方式

在EF中,默认是数据库表对应的是模型类的类名,表字段对应的是类的属性(属性名和表字段名一致)

如果在开发过程中因为某些原因表名为T_Students,而类名是Students无法对应,表的列名和类的属性不一致。可以通过配置模型类来实现一一对应关系。

方式一:DataAnnotations,方便简单,但是耦合度太高

在类名上添加[Table("表名")]

在属性上添加[Column("列名")]

方式二:FluenetAPI方式

(1)原来的类不变,增加一个对应的模型类的配置类,继承EntityTypeConfiguration<T>类,比如:模型类是Students,那么就定义一个StudentsConfig类,继承EntityTypeConfiguration<Students>

(2)继承DbContext类需要重写OnModelCreating方法

三、增删查改

1.增

2.删

先查询,然后删除

Remove删除数据

还可以根据RemoveRange()根据范围删除数据s据s

3.查

4.改(更新)

先查询,后修改

Asp.net mvc基础(十四)Entity Framework的更多相关文章

  1. ASP.NET开发实战——(十二)ASP.NET MVC 与数据库之Entity Framework Migrations

    在开发数据库应用程序的时候,经常会遇到某些表需要添加字段或者修改类型.新增表等需求,而对于EF Code First来说关注的只有实体类,当需求变更时只需要添加新的实体类或者在实体类中添加.删除.修改 ...

  2. 3、ASP.NET MVC入门到精通——Entity Framework增删改查

    这里我接上讲Entity Framework入门.从网上下载Northwind数据库,新建一个控制台程序,然后重新添加一个ado.net实体数据模型. EF中操作数据库的"网关"( ...

  3. ASP.NET没有魔法——ASP.NET MVC 与数据库之Entity Framework Migrations

    在开发数据库应用程序的时候,经常会遇到某些表需要添加字段或者修改类型.新增表等需求,而对于EF Code First来说关注的只有实体类,当需求变更时只需要添加新的实体类或者在实体类中添加.删除.修改 ...

  4. 2、ASP.NET MVC入门到精通——Entity Framework入门

    实体框架(Entity Framework)简介 简称EF 与ADO.NET关系 ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R ...

  5. ASP.NET MVC Model验证(四)

    ASP.NET MVC Model验证(四) 前言 本篇主要讲解ModelValidatorProvider 和ModelValidator两种类型的自定义实现,前者是Model验证提供程序,而Mod ...

  6. ASP.NET MVC基础学习

    ASP.NET MVC基础学习 传统的MVC概念 模型:组类,描述了要处理的数据以及修改和操作数据的业务规则 视图:定义应用程序用户界面的显示方式 控制器:一组类,用来处理来自用户,整个应用程序流以及 ...

  7. ASP.NET MVC 学习笔记-2.Razor语法 ASP.NET MVC 学习笔记-1.ASP.NET MVC 基础 反射的具体应用 策略模式的具体应用 责任链模式的具体应用 ServiceStack.Redis订阅发布服务的调用 C#读取XML文件的基类实现

    ASP.NET MVC 学习笔记-2.Razor语法   1.         表达式 表达式必须跟在“@”符号之后, 2.         代码块 代码块必须位于“@{}”中,并且每行代码必须以“: ...

  8. ASP.NET MVC Model绑定(四)

    ASP.NET MVC Model绑定(四) 前言 前面的篇幅对于Model绑定器IModelBinder以及实现类型.Model绑定器提供程序都作了粗略的讲解,可以把Model绑定器想象成一个大的容 ...

  9. ASP.NET MVC Model元数据(四)

    ASP.NET MVC Model元数据(四) 前言 前面的篇幅讲解了Model元数据生成的过程,并没有对Model元数据生成过程的内部和Model元数据结构的详细解释.看完本篇后将会对Model元数 ...

  10. ASP.NET MVC下的四种验证编程方式[续篇]

    在<ASP.NET MVC下的四种验证编程方式>一文中我们介绍了ASP.NET MVC支持的四种服务端验证的编程方式("手工验证"."标注Validation ...

随机推荐

  1. Windows中利用任务计划执行进程守护

    在Windows中除了开发专用的进程守护外,还可以利用任务计划做进程守护. 一.bat示例 tasklist | findstr "notepad" if %ERRORLEVEL% ...

  2. Netty实战入门教程

    概述 Netty 是一个异步的.基于事件驱动的网络应用框架,用于快速开发可维护.高性能的网络服务器和客户端 Netty 在 Java 网络应用框架中的地位就好比:Spring 框架在 JavaEE 开 ...

  3. Keepalived基本原理

    本文分享自天翼云开发者社区<Keepalived基本原理>,作者:Ujnrfc Keepalived简介 Keepalived是Linux下一个轻量级别的高可用解决方案.高可用:广义来讲, ...

  4. 使用天翼云云容器引擎CCE创建简单nginx服务

    本文分享自天翼云开发者社区<使用天翼云云容器引擎CCE创建简单nginx服务>,作者:b****n 一.创建一个nginx应用. 1.选择资源池,如[杭州2],进入云容器引擎CCE平台页面 ...

  5. go的math/rand随机数生成器

    伪随机数生成器,默认情况下随机数种子是固定的, 注意:固定的随机数种子每次生成的随机数都是相同的随机数序列 一.基础用法 math/rand 包提供了随机数生成的方法.常用的函数包括: rand.In ...

  6. linux--notepad++安装

      通过PPA进行安装notepad++ sudo add-apt-repository ppa:notepadqq-team/notepadqq sudo apt-get update sudo a ...

  7. 表治理-Iceberg小文件合并测试

    总结 指标 合并前 合并后(因测试中多次合并,数据会偏多) 查询速度 246秒 13秒 表总大小 9.2G 26.4G 单个文件大小 1-25MB 60MB左右 metadata目录文件数 37 75 ...

  8. RDK新一代模型转换可视化工具!!!

    作者:SkyXZ CSDN:SkyXZ--CSDN博客 博客园:SkyXZ - 博客园 之前在使用的RDK X3的时候,吴诺老师@wunuo发布了新一代量化转换工具链使用教程,这个工具真的非常的方便, ...

  9. mysql之增删改

    编写配置文件[db.properties]: driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/jdbcStudy?useUni ...

  10. GUI编程之AWT

    介绍 包含了很多类和接口 元素:窗口.按钮.文本框 java.awt Frame 就是一个窗口 实现 package com.yeyue.lesson01;​import java.awt.*;​pu ...