EF 6.0使用小计

---恢复内容开始---

最近尝试了下EF Extended,但是居然需要EF6.0以上,没办法,只能安装了,打开解决方案,选择库程序包管理下的程序包管理控制台(或者直接右击你需要使用扩展的解决方案选管理NuGet程序包),也不废话了,直接装上。

使用简单的三层结果,在DAL层装上了extended扩展,点开引用一看,好家伙,引入了三个dll,一个是EntityFramework,一个EntityFramework.Extended,一个是EntityFramework.SqlServer,没弄明白他为啥需要引入.SqlServer?

用EF PowerTools工具生成了Model,在web层处理好了config,如下

 1     <configSections>
 2         <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
 3     </configSections>
 4
 5   <entityFramework>
 6     <contexts>
 7       <context disableDatabaseInitialization="true" type="Hwapu.CTB.DAL.CTBContext">
 8       </context>
 9     </contexts>
10     <providers>
11       <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
12     </providers>
13   </entityFramework>

开始处理批量更新了,随便写了一个

using (CTBContext db = new CTBContext())
{
        //var topicList = db.TUserWrongTopics.Where(r => r.TopicId == topicId);
        //int state = db.TUserWrongTopics.Update(topicList, u => new TUserWrongTopic { IsDelete = 1 });//Method 1 Obsolete
        //int state = db.TUserWrongTopics.Update(q => q.TopicId == topicId, q => new TUserWrongTopic { IsDelete = 1 });//Method 2 Obsolete
        int state = db.TUserWrongTopics.Where(r => r.TopicId == topicId).Update(r => new Model.TUserWrongTopic { IsDelete = 1 });
        return state;
}

最后执行的时候居然报错,在实例化Context的时候居然说没有找到注册需要的ADO.NET 的SqlClient,奇怪,后面找了相关资料,发现需要在web层重新引用一下EntityFramework.SqlServer,奇怪,不知道这是VS的bug还是什么,在DAL层不是应用了吗,还需要重新引用一次?

后面用自己的dll测试了一下,发现无论在哪个地方调用。都能够正常,不需要在web层重新引入,奇怪的问题。难道EF6不再加入.net framework之后就必须在调用的地方引入SqlServer?在5.0时是不需要引入Sql,升级之后EF添加了对Oracle,mySql,DB2之后必须要声明对数据库的调用的引用。

---恢复内容结束---

时间: 2024-10-07 22:35:46

EF 6.0使用小计的相关文章

使用EF操作Oracle数据库小计

1.建表 CREATE TABLE item.ORDERS( ORDERID NUMBER(20) CONSTRAINT PK_ORDERS PRIMARY KEY, ORDERNO VARCHAR2(20), STOREID NUMBER(20), STOREOWNERID NUMBER(20), CUSTOMERID NUMBER(20), ORDERTYPE NUMBER(3), ORDERSTATUS NUMBER(3) ); 2.ID自增列设置 create sequence ITEM

oracle 报表带小计合计

selectcase when (grouping(glbm)=1) then '合计' else DECODE(glbm,null,'',glbm) end glbm,case when (grouping(hpzl)=1) then '' else DECODE(hpzl,null,'',hpzl) end hpzl,case when (grouping(syxz)=1 and grouping(hpzl)=0) then '小计' else DECODE(syxz,null,'',syx

[Enterprise Library for .NET Framework 2.0]缓存使用小计

关键代码: using Microsoft.Practices.EnterpriseLibrary.Caching; using Microsoft.Practices.EnterpriseLibrary.Caching.Expirations; using System; namespace ETLUtilHelpV2 { /// <summary> /// Enterprise Library for .NET Framework 2.0 缓存工具类 /// </summary>

汽车仪表是如何计算总计里程和小计里程的?

现在汽车仪表大部分的总计里程和小计里程都是显示在屏幕上的,这包括段码屏.点阵屏.TFT彩屏等,虽然显示形式不一样,但是从业务需求和软件应用层的实现策略来讲,原理应该都是通用的.本文不涉及具体车型,仅对一般的业务逻辑作介绍,一是为了自己总结记录,二是期望吸引同行或爱好者交流. 1.总计里程 ODO(Total Odometer )即总计里程,顾名思义,主要作用是记录汽车总的行驶里程,一般来讲,在用户使用过程中是无法对其修改或清零的,因为它是对二手汽车价值评估的一项重要数值,当然随意篡改这一数据也是

traits技法小计

在学习算法导论的时候,对于各数据结构,自然是实现一个才算掌握,工具当然是template编程,但是自己的demo经常存在很多问题,比如没有给出迭代器啊,操作符重载不够啊等等设计上的问题,而某些问题实际上是从设计之初就该考虑的大框架,而非小细节.对于C++而言,STL无疑是最佳的参考资料,侯捷先生的STL源码剖析一书给我们良好的示范,而直接从第四章开始看会云里雾里,无法得其精髓,因此在学习算法之余决定尾随侯捷先生脚步,学习STL traits技法,从而可以从STL中学到更多的数据结构实现. 收获自

设计模式小计——23种设计模式3

责任链模式Chain of Responsibility 使多个对象都有机会处理请求,从而避免请求的发送者和接受者间的耦合关系,并沿着这条链传递请求,直到有对象处理它为止 责任链模式关键是建立链接关系,在链中决定谁来处理请求 //抽象处理者 public abstract class Handle{ private Handle nextHandle;//链的下一个节点 public final Response handleMessage(Request request){ Response

设计模式小计——23种设计模式1

单例模式Singleton Pattern 确保类只有一个实例,而且自行实例化并向整个系统提供这个实例 public class Singleton{ private static final Singleton singleton = new Singleton(); private Singleton(){} public static Singleton getSingleton(){ return singleton; } } 节省内存开支,减少性能开销,应用启动产生单例对象,永久驻留内

Sql使用WITH ROLLUP 进行分类汇总及小计功能

效果如下: 测试代码如下: CREATE TABLE #test    (      Name VARCHAR(10) ,      [procedure] CHAR(1) ,      model VARCHAR(5) ,      quantity INT    ); INSERT  INTO #test        SELECT  'A' ,                '1' ,                'φ50' ,                500        UNI

vim 小计

vim 小计 现在经常要用到vim,感觉它和一般的编辑器很不同,的确是非常难却又非常强大的东西,我之前掌握的皮毛显然是不能再提高生产力了,想着如果能学好应该是收益颇丰,现在记下我这周学的东西: Navigate: 之前一直只知道jkhl,0^$,ctrl+F, ctrl+B,现在知道w e b 和H M L ,方便多了.还有%来查看括号,对编程很有帮助. Insert: 之前只知道i,现在知道a, o, I, A, O Delete: 之前只知道dd,现在知道x, dw等组合 Undo: 之前只