什么时候用LINQ
什么时候用LINQ?为什么用LINQ?LINQ有什么好处?
1. 首先,如果你们的项目组没有SQL很强的人,我还是很希望你用LINQ。
2. 如果你是一个反对写存储过程,反对将业务逻辑带入数据库层,并且坚定地认为数据库只是发挥持久化数据作用的人,我觉得你也会很喜欢LINQ的便捷性。
3. LINQ提供了一个统一的数据集访问方式,如果你的项目不仅仅涉及访问传统的数据库,而且还要涉及比较多内存数据集查询(比如操作Dictionary<,>),甚至XML型的数据库文件,那我强烈建议你使用LINQ,统一的数据集访问方式对项目管理还是很有好处的,不然这个人用这种方式取内存数据、那个人用那种方式取XML数据......你这项目要侵入多少额外的操作类?看着都愁就更不用说去好好的管理了。
4. LINQ to sql的操作是缓存的,事务的,如果你不想花很大的精力去优化数据库访问,用LINQ是一步到位的,绝对节省项目精力,提高项目质量。而且LINQ to sql的速度优化还是很好的,更不用说以后的ADO.NET ENTITY了。
5. 需求的变化经常导致需要在数据库中更改字段,这是头痛的,也是无可奈何的,目前也没什么太好的办法去解决。但是如果你的项目中用的是sql语句字符串操作数据库,那你就要更头痛了,一个个更改这些字符串,但项目大了总会有遗漏,运行时碰到了才会出错,有时候甚至时间长了你会忘记你曾经更改过数据库字段,那就更麻烦了。如果你用LINQ,虽然你还是要一个地方一个地方去改,但只要你更改过数据库,在VS 2008 IDE里更新过更改的表,等你再一编译就会把错误的地方全部找出来,这样问题就相对小了很多。
6. sql注入式入侵大家再也熟悉不过了,我的查询是用LINQ to sql写的,你入侵看看,呵呵。no way!