微软象关系对应(O/R Mapping)

Entity Framework的全称是ADO.NET Entity Framework,是微软开发的基于ADO.NET的ORM(Object/Relational Mapping)框架。

Entity Framework的主要特点:

1. 支持多种数据库(Microsoft SQL Server, Oracle, and DB2);

2. 强劲的映射引擎,能很好地支持存储过程;

3. 提供Visual Studio集成工具,进行可视化操作;

4. 能够与ASP.NET, WPF, WCF, WCF Data Services进行很好的集成。

[AutoMapper] AutoMapper 5.0.2 的新寫法

2017年11月30日

在 4.2 的時候,CreateMap 方法只是被標記過時到了 5.0.2 的時候,這些過時的方法,已經被拔掉,改由 MapperConfiguration 取代,一旦升級到 5.0.2 就勢必要面臨改寫程式,也獲得到超高效能https://lostechies.com/jimmybogard/2016/06/24/automapper-5-0-speed-increases/靜態方法固然方便,但...

EntityFramework一对一关系

2017年11月30日

如果我们要将两个类配置为一对一关系,则两个类中都要配置相应的引用属性,如:public class Person { public int PersonId { get; set; } public int SocialSecurityNumber { get; set; } public string FirstName { get...

Linq to sql查询(单表、多表查询)

2017年11月30日

关于数据库的查询中经常需要用到多表的连接查询,这里就简单地展示关于linq的查询功能。1、单表的查询var query = from tc in db.tbClass where tc.ClassID == "1" //查询表tbClass select new { ClassID=tc.ClassID, ...

EF Join连接查询的坑

2017年11月30日

最近做项目的时候遇到一个需要级联查询的数据,表中又没有定义相关的外键约束,所以限定了咱们只能使用Join方式的关联而不是Include的方式关联,关于Include和Join的详细用法,本屌就不再此处进行详细说明了。园子里相关的文章有很多,大家请自行去查看!废话不多说,直接上代码:说明:1.ef的Join级联查询生成的语句是Inner Join 的方式,所以此处生成的脚本语句应该类似下面的形式:s...

LINQ to SQL语句之Join和Order By

2017年11月29日

Join操作适用场景:在我们表关系中有一对一关系,一对多关系,多对多关系等。对各个表之间的关系,就用这些实现对多个表的操作。说明:在Join操作中,分别为Join(Join查询), SelectMany(Select一对多选择)和GroupJoin(分组Join查询)。该扩展方法对两个序列中键匹配的元素进行inner join操作SelectMany说明:我们在写查询语句时,如果被翻译成Selec...

Linq join使用方法

2017年11月26日

最近要用到Linq的Join多表查询,不知道怎么写,之后参考了一下《果壳中的C# C#5.0权威指南》,终于学会了使用运算符流格式查询写法,如下:首先是一个查询表达式:var r = from c in NoTopic join p in zhihu on c.Id equals p.BlogsId select new { c.User.UserName, c.Zhihu_Context, ...

C# Linq 交集、并集、差集、去重

2017年11月23日

最近要求俩个表的差集,在网上找了一下,之后整理如下:using System.Linq; List<string> ListA = new List<string>(); List<string> ListB = new List<string>(); List<string> ListResult = new List<string>(); ListResult = ListA.Di...

关于Entity Framework更新的几种方式以及可能遇到的问题(附加类型“Model”的实体失败,因为相同类型的其他实体已具有相同的主键值)在使用 "Attach" 方法或者将实体的状态设置为 "Unchanged" 或 "Modified" 时如果图形中的任何实体具有冲突键值,则可能会发生上述行为

2017年11月21日

在日常使用Entity Framework中,数据更新通常会用到。下面就简单封装了一个DBContext类public partial class EFContext<T> : DbContext where T : class { public EFContext(): base("name=MyConnectionString") { ...