论坛首页 编程语言技术论坛

linq to sql 怎么感觉没还nhibernate 完善?

浏览 15954 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (23)
作者 正文
   发表时间:2008-08-27  
周富贵 写道
我以为使过nhibernate,ORM概念还算了解,就用了linq to sql,觉得老大的东东应该靠的住吧,只支持sql server就认了,MS的一贯作风,但是one-to-one,one-to-many,many-to-many,多态等特性用起来很郁闷,集合还必须要用EntitySet什么的,真恶心,连SUID都那么别扭,比起spring.net + nhibernate差远了,莫非要等到linq3.0?

感觉是MS仓促出来的东东。真垃圾!!!还不像把castle project买下了,那个ASP.NET MVC完全抄袭,跟monorail一样,当然,抄袭还有好处,用起来不错。

偶去年看的时候linq还是很好用的,比hibernate什么的强太多了,难道你看的linq和偶看的不是同一个东西?
http://www.iteye.com/topic/76944
0 请登录后投票
   发表时间:2008-08-27  
周富贵 写道
LINQ不能想SQL那样拼个串,想不出来LINQ怎么实现组合查询功能,就是用户自己查询条件的,很纠结啊很纠结。

偶告诉你一秘籍,就连火星人在跨入21世纪以后也不用XXX拼串了...
0 请登录后投票
   发表时间:2008-08-27  
Readonly 写道
周富贵 写道
LINQ不能想SQL那样拼个串,想不出来LINQ怎么实现组合查询功能,就是用户自己查询条件的,很纠结啊很纠结。

偶告诉你一秘籍,就连火星人在跨入21世纪以后也不用XXX拼串了...


我想可以用反射实现,但是想不明白为啥要为难自己。大牛,你有啥好主意?
0 请登录后投票
   发表时间:2008-08-27  

orm 一个特点就是一般来说不用再拼串

-----------------
目前的orm 实现:
反射db元数据
xml或文档注释

---------------

不管怎么做
底层还是拼串成sql的

--------------------

0 请登录后投票
   发表时间:2008-08-27  
周富贵 写道
LINQ不能想SQL那样拼个串,想不出来LINQ怎么实现组合查询功能,就是用户自己查询条件的,很纠结啊很纠结。


LINQ的这点比NHIbernate厉害 人家除了字段即属性外 还有万能的动态类型
0 请登录后投票
   发表时间:2008-08-27  
Readonly 写道
周富贵 写道
我以为使过nhibernate,ORM概念还算了解,就用了linq to sql,觉得老大的东东应该靠的住吧,只支持sql server就认了,MS的一贯作风,但是one-to-one,one-to-many,many-to-many,多态等特性用起来很郁闷,集合还必须要用EntitySet什么的,真恶心,连SUID都那么别扭,比起spring.net + nhibernate差远了,莫非要等到linq3.0?

感觉是MS仓促出来的东东。真垃圾!!!还不像把castle project买下了,那个ASP.NET MVC完全抄袭,跟monorail一样,当然,抄袭还有好处,用起来不错。

偶去年看的时候linq还是很好用的,比hibernate什么的强太多了,难道你看的linq和偶看的不是同一个东西?
http://www.iteye.com/topic/76944


LINQ是一个抽象的对象化查询API,理论上来说可以处理各种数据来源,不仅限于关系数据库。不过我对LINQ抱谨慎怀疑态度,凡是想做的很通用的框架往往比较失败。
0 请登录后投票
   发表时间:2008-08-27  
robbin 写道
Readonly 写道
周富贵 写道
我以为使过nhibernate,ORM概念还算了解,就用了linq to sql,觉得老大的东东应该靠的住吧,只支持sql server就认了,MS的一贯作风,但是one-to-one,one-to-many,many-to-many,多态等特性用起来很郁闷,集合还必须要用EntitySet什么的,真恶心,连SUID都那么别扭,比起spring.net + nhibernate差远了,莫非要等到linq3.0?

感觉是MS仓促出来的东东。真垃圾!!!还不像把castle project买下了,那个ASP.NET MVC完全抄袭,跟monorail一样,当然,抄袭还有好处,用起来不错。

偶去年看的时候linq还是很好用的,比hibernate什么的强太多了,难道你看的linq和偶看的不是同一个东西?
http://www.iteye.com/topic/76944


LINQ是一个抽象的对象化查询API,理论上来说可以处理各种数据来源,不仅限于关系数据库。不过我对LINQ抱谨慎怀疑态度,凡是想做的很通用的框架往往比较失败。



linq在(且仅在).net上实际上比nhinernate更好用 这个是事实
0 请登录后投票
   发表时间:2008-08-28  
kimmking 写道
ray_linn 写道
LINQ也是数据库无关的,只要数据库提供了provider.


这么说的话 就广的去了

只是提供了odbc驱动
任何东西都是无关的了


你是不是小白?

Provider的作用和JDBC是一样的,LINQ建立在Provider之上,和hibernate建立在jdbc之上类似。通过JDBC或者Provider隔离了数据库相关操作。

DbLinq Project: Linq Provider for MySql, Oracle and PostgreSQL
http://code2code.net/DB_Linq/
0 请登录后投票
   发表时间:2008-08-28  
nhibernate 2.1 开始加入LINQ的支持,Linq for nhibernate。

预计2.1开始 nhibernate开始走一条不同于hibernate的路。
0 请登录后投票
   发表时间:2008-08-28  
ray_linn 写道
kimmking 写道
ray_linn 写道
LINQ也是数据库无关的,只要数据库提供了provider.


这么说的话 就广的去了

只是提供了odbc驱动
任何东西都是无关的了


你是不是小白?

Provider的作用和JDBC是一样的,LINQ建立在Provider之上,和hibernate建立在jdbc之上类似。通过JDBC或者Provider隔离了数据库相关操作。

DbLinq Project: Linq Provider for MySql, Oracle and PostgreSQL
http://code2code.net/DB_Linq/



问题是多少数据库提供了linq的provider

大多数都提供了jdbc驱动,hibernate基本就可以用了。
比如我要用db2或是derby,难道我要自己写provider去?
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics