永发信息网

linq ado.net 哪个好

答案:2  悬赏:30  手机版
解决时间 2021-02-06 10:13
  • 提问者网友:鐵馬踏冰河
  • 2021-02-05 17:17
linq ado.net 哪个好
最佳答案
  • 五星知识达人网友:罪歌
  • 2021-02-05 18:18
linq包括好多的,估计你说的是linq to sql,以下的linq 都代表linq to sql 吧
linq 简单, 但是你要理解一些概念,ORM,拉姆达表达式,委托,泛型,表达式树
ado.net 效率更高效一点,但是麻烦,会有大量重复的代码编写.
linq是提供了直接调用存储过程和sql语句调用的接口的,所以比较好的做法是使用linq,然后有特殊需求的写存储过程,然后用linq调用,或者在linq 里直接写sql语句, 基本所有的ORM框架都有这样的接口的哦

其实linq最强大的不是操作数据库, 你可以参考linq to object,linq to xml 等等,这才是linq牛X的地方
全部回答
  • 1楼网友:空山清雨
  • 2021-02-05 19:29
linq to sql也是基于ado.net的,但是,之前我们执行的sql语句,到linq里,是以对象的形式进行感知的, 也就是说,你再也不用担心你的sql语句有问题而拖到查询分析器里调试了。 linq to sql把对象和实体做了个映射,这个映射建立在数据库和对象之间。 以前的字段,变成了现在的一个属性,汗。。。我的表达能力有限,简单的说就是这么回事。 当然,只是初步学习了一个入门知识。。。 下面贴代码对比一下linq和ado.net的操作。 //使用linq to sql 进行查询 ctdatacontext dp = new ctdatacontext(); var result = from emp in dp.account where emp.s_id == 1 select emp; this.gridview1.datasource = result;//填充 this.gridview1.databind(); //使用ado.net进行查询 sqlconnection conn = new sqlconnection (configurationmanager.connectionstrings["myconnectionstring"].connectionstring); sqldataadapter da = new sqldataadapter("select * from account where s_id = 1", conn); dataset ds = new dataset(); da.fill(ds); this.gridview1.datasource = ds.tables[0];//填充 this.gridview1.databind(); 显示的结果是一样的,大概就是这样了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯