博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Entity Framewor 学习笔记 (碎碎的东西)
阅读量:7219 次
发布时间:2019-06-29

本文共 1159 字,大约阅读时间需要 3 分钟。

Proxy 类 代理类是为了让EF实现lazy load才需要的
public class BloggingContext : DbContext  {      public BloggingContext()      {          this.Configuration.ProxyCreationEnabled = false; } } 这样就可以关掉了。
using (var context = new BloggingContext())  {      var blog = context.Blogs.Find(1);      var entityType = ObjectContext.GetObjectType(blog.GetType());  } 上面这个写法可以100%拿到Original Class, 如果 Proxy 是开启的状态,那么这将很好用 AsNoTracking
using (DB db = new DB()){    var product = db.products.AsNoTracking().FirstOrDefault();    var state = db.Entry(product).State; // Detached}

看到了吧,可以返回一个 Detached 的Entity, 可以帮助提升性能.

 

[NotMapped] prop不要map to sql 

[DatabaseGenerated(DatabaseGeneratedOption.Computed)] //让sql来generate value

[ConcurrencyCheck] //并发控制

 

更新 2016-07-14 

Entity framework sum 

refer : https://ilmatte.wordpress.com/2012/12/20/queryable-sum-on-decimal-and-null-return-value-with-linq-to-entities/

double resultA = db.units.Where(u => u.type == "aa").Sum(u => (double?)u.amount) ?? 0;double resultB = db.units.Where(u => u.type == "aa").Sum(u => u.amount);  //error

resultB 会有 error , 2个制作出来的 sql 语句是一样的, 问题出在 double 必须是nullable 丫

 

转载于:https://www.cnblogs.com/keatkeat/p/4743911.html

你可能感兴趣的文章
mac 安装secureCRT
查看>>
/var/adm/wtmp文件太大该怎么办?
查看>>
反应器模式 vs 观察者模式
查看>>
Algernon's Noxious Emissions POJ1121 zoj1052
查看>>
iOS-数据持久化-对象归档
查看>>
iOS开发UI篇—程序启动原理和UIApplication
查看>>
MUI 里js动态添加数字输入框后,增加、减少按钮无效
查看>>
python pip 更换国内安装源(windows)
查看>>
结对编程2后篇
查看>>
oracle exp 和 imp 数据和表结构互相独立导出导入
查看>>
iphone-common-codes-ccteam源代码 CCNSPredicate.m
查看>>
这次项目中应该注意的问题和应该保持的好习惯
查看>>
python-数据结构化与保存
查看>>
LeetCode - 551. Student Attendance Record I
查看>>
Java用户线程和守护线程
查看>>
ClassLoader类加载机制&&JVM内存管理
查看>>
Caml语句 查询分配给当前用户及当前组
查看>>
记一次源码分析
查看>>
php版本引起的const问题
查看>>
js实现60s倒计时效果
查看>>