如何在EF中直接运行SQL命令
EF model first方式, 你的DB是继承ObjectContext
using (MyObjectContext db = new MyObjectContext() )
{
string sql = “ select columnA, columnB from TableA where 1 = 1 ”;
db.ExecuteStoreQuery(sql).ToList();//TableAObject就是你定义的对象,对象属性就是columnA, columnB
}
code first, 你的db是继承DbContext
using (MyDbContext db = new MyDbContext() )
{
string sql = “ select columnA, columnB from TableA where 1 = 1 ”;
db.TableAObject.SqlQuery(sql).ToList();//TableAObject就是在MyDbContext 定义的对象
}
这里只是列举查询的方式,仅供参考,一般新增 删除 或者修改 用对象的方式比较多,如果是sql,一般是
db.Database.ExecuteSqlCommand(sqlString)
Entity Framework和NHibernate的区别是什么
Transact-SQL是一种数据定义、操作和控制语言,是SQL Server中的重要元素。Transact-SQL是SQL Server编程的重要工具,是SQL Server编程的基础。无论做为数据库管理员、数据库程序员都必须熟练掌握该语言进行数据库的设计、维护和编程。即使作为一名应用程序设计者,也必须熟练掌握Transact-SQL语法以便同SQL-Server进行交互。
http://temp.ujustdo.com/upload/4EF41D6A-605C-41ED-80CA-319EC7F43554/2f35cf9887b54d11a5032a252f56ee71/tPrep/2071_2073_05.doc
1.可以这么说。。都是ORM框架
不过,EF秉承微软的出品的一贯作风,很难容易上手。另外,EF可以很方便的按照数据库生成实体类,而NH默认没有这个能力,必须用其他代码生成方案。
我目前对两者都不是很深入,但是从学习成本上看,NH的成本远超EF。
而在性能方面,我个人认为二者没有绝对差距。。。关键还是编程人员的应用,以及调优。
基本上都会说linq to sql是轻量级的框架,而ef,nh则是重量级的。。。
引用一段“LINQ to SQL和Entity Framework各有所长,LINQ to SQL是一个轻量级的ORM框架,旨在为Microsoft SQL Server数据库提供快速的应用程序开发,其优点是易于使用、简单、高性能。而Entity Framework的优点在于:其为创建数据库架构和实体类之间的映射提供了更好的灵活性,它还通过提供程序支持除了SQL Server之外的第三方数据库。"
我是没看出来。。而且我个人觉得单从易用性来看,ef以及相当简单了。。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!