Asp.net mvc基础(十四)Entity Framework
一、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的更多相关文章
- ASP.NET开发实战——(十二)ASP.NET MVC 与数据库之Entity Framework Migrations
在开发数据库应用程序的时候,经常会遇到某些表需要添加字段或者修改类型.新增表等需求,而对于EF Code First来说关注的只有实体类,当需求变更时只需要添加新的实体类或者在实体类中添加.删除.修改 ...
- 3、ASP.NET MVC入门到精通——Entity Framework增删改查
这里我接上讲Entity Framework入门.从网上下载Northwind数据库,新建一个控制台程序,然后重新添加一个ado.net实体数据模型. EF中操作数据库的"网关"( ...
- ASP.NET没有魔法——ASP.NET MVC 与数据库之Entity Framework Migrations
在开发数据库应用程序的时候,经常会遇到某些表需要添加字段或者修改类型.新增表等需求,而对于EF Code First来说关注的只有实体类,当需求变更时只需要添加新的实体类或者在实体类中添加.删除.修改 ...
- 2、ASP.NET MVC入门到精通——Entity Framework入门
实体框架(Entity Framework)简介 简称EF 与ADO.NET关系 ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R ...
- ASP.NET MVC Model验证(四)
ASP.NET MVC Model验证(四) 前言 本篇主要讲解ModelValidatorProvider 和ModelValidator两种类型的自定义实现,前者是Model验证提供程序,而Mod ...
- ASP.NET MVC基础学习
ASP.NET MVC基础学习 传统的MVC概念 模型:组类,描述了要处理的数据以及修改和操作数据的业务规则 视图:定义应用程序用户界面的显示方式 控制器:一组类,用来处理来自用户,整个应用程序流以及 ...
- ASP.NET MVC 学习笔记-2.Razor语法 ASP.NET MVC 学习笔记-1.ASP.NET MVC 基础 反射的具体应用 策略模式的具体应用 责任链模式的具体应用 ServiceStack.Redis订阅发布服务的调用 C#读取XML文件的基类实现
ASP.NET MVC 学习笔记-2.Razor语法 1. 表达式 表达式必须跟在“@”符号之后, 2. 代码块 代码块必须位于“@{}”中,并且每行代码必须以“: ...
- ASP.NET MVC Model绑定(四)
ASP.NET MVC Model绑定(四) 前言 前面的篇幅对于Model绑定器IModelBinder以及实现类型.Model绑定器提供程序都作了粗略的讲解,可以把Model绑定器想象成一个大的容 ...
- ASP.NET MVC Model元数据(四)
ASP.NET MVC Model元数据(四) 前言 前面的篇幅讲解了Model元数据生成的过程,并没有对Model元数据生成过程的内部和Model元数据结构的详细解释.看完本篇后将会对Model元数 ...
- ASP.NET MVC下的四种验证编程方式[续篇]
在<ASP.NET MVC下的四种验证编程方式>一文中我们介绍了ASP.NET MVC支持的四种服务端验证的编程方式("手工验证"."标注Validation ...
随机推荐
- 056_带标签的break和continue 057_方法的定义_形参_实参_返回值_语句块 058_方法的重载overload 059_递归算法详解_递归和迭代效率测试
056_带标签的break和continue(替代被取消的goto语句) 加个计数器: /** * 带标签的Break和Continue * * @author * */public class Te ...
- String类的使用1
/*String:字符串,使用一对""引起来表示.1.String声明为final的,不可被继承2.String实现了Serializable接口:表示字符串是支持序列化的. 实现 ...
- 使用_begin{thebibliography}__bibitem 如何参考文献
本人是tex新手,如果各位大佬有更好的方法欢迎分享,不胜感激. 适用情况 本文适用于使用\begin{thebibliography}和\bibitem排序的情况,如果使用bibtex排序那么网上很多 ...
- OpenAPI 简介
本文分享自天翼云开发者社区<OpenAPI 简介>,作者:蔡****钊 一.什么是open API API的全称是应用编程接口(Application Programming Interf ...
- .NET周刊【1月第2期 2025-01-12】
国内文章 [.NET] API网关选择:YARP还是Ocelot? https://www.cnblogs.com/madtom/p/18655530 本文详细比较了YARP和Ocelot两种API网 ...
- LangChain基础篇 (04)
LangChain 核心模块:Data Conneciton - Document Loaders 使用文档加载器从源中加载数据作为文档.一个文档是一段文字和相关的元数据. 如,有用于加载简单 .tx ...
- linux mint安装Idea
一.前言 这一节我们介绍在Linux下如何安装与破解Intellij idea2017.现在有很多公司开发环境都是Linux,所以掌握在Linux环境下使用Idea办公也是咱们必须得掌握的技能. 记住 ...
- Luogu P5298 PKUWC2018 Minimax 题解 [ 紫 ] [ 树形 dp ] [ 线段树合并 ] [ 概率 dp ]
Minimax:线段树合并优化 dp 好题. 树形 dp 因为要求出每一个值的出现概率,首先我们可以想到一个很暴力的 dp 式子. 定义 \(dp_{i,j}\) 表示在节点 \(i\) 时,权值 \ ...
- [联合省选 2020A] 组合数问题 题解
后面有一只大大的组合数,考虑下降幂干过去.\(x^k\) 并不好使,这边考虑转化 \(f(x)=\sum a_ix^i=\sum b_ix^\underline i\). \[\sum_{k=0}^n ...
- 川崎机器人维修kasawaki维护注意事项
为确保川崎机械臂的正确安全操作.防止人员伤害和财产损失,请遵守下述方框符号表达的安全信息. --注意事项 在进行Kasawaki川崎机器人维修操作前,请注意如下事项以确保安全. 1. 在开始检查之前, ...