请问现在主流的ORM框架是 Nhibernate和Spring.NET吗?大公司都要这些框架做开发吗?还是大公司都有开发一套自己的框架?开发一套自己的ORM框架而不会用Nhibernate和Spring.NET会很落后吗?现在asp.net的企业级开发的终极解决方案是asp.net mvc+Nhibernate+Spring.NET+Linq+WCF 吗?我该自己学写一个ORM框架还是直接学会用Nhibernate和Spring.NET就可以了?请高手们多多发言交流一下,为我指明一条学习方向。谢谢!
微软自己本身不是有Linq to sql(或object,entitiy) 和 Entity Framework吗?
自己开发怎么能叫落后呢……我们现在产品用的就是自己开发的……
他已经说的很明白了——
实际上对于开发来说,我们是只用合适的,而不是只用贵滴,大滴-------对于这行来说合适就好,虚荣是要不得地,崇拜编程也是要不得地,新工具新技术综合症也是要不得地
至于楼主你到底是要用现成的一些框架还是自己写,同样也是要视情况而定,我们只能给出建议。
像楼主说的在小公司的话,我觉得用现成的框架比较好
不是我又来了,而是你又来了借楼主这个帖子,对jelly1989说几句话我明白你的意思,不过你的明白这里是csdn,不是幼儿园大班,如果你想找家教或者保姆,你应该去职介中心,或者干脆给青鸟交个几w块csdn是一个交流心得的地方,不是基础认知培训中心,也不是保姆天地,ok你不喜欢我们的态度,无所谓,你大可以去青鸟的培训论坛。我只说感谢csdn这些大牛们这些态度n年前我做视频的时候,我承认当时对视频完全没有概念,于是c++版滴人让我去看陆其明的《directshow入门》《directshow实务》我看了把基础知识补齐了,现在我能很熟练玩视频,我感谢当初让我看书的大大n年前我也想lz一样困惑于数据库和对象的关系,发了一个帖子,sp1234大大劈头就是一通,让我去看看到底啥叫实体,我看了开始不理解,现在很明白了,我得谢谢sp1234大大记住这里的人不是保姆,而是那些吃过亏,上过当,到过你没到过的地方的人。如果你只是在岸边上还不会游泳,你是想学游泳滴,那么你来错位置了,这里的人交流的不是如何游泳,而是怎么游的好看,快速,那里有暗流,那里有鲨鱼!!
User表
UserId UserNameRole表
RoleId RoleNameUserInRole表
UserId RoleId对应的表我设计了两个实体类,UserInfo.cs 有属性 UserId UserName 和 RoleInfo.cs 有属性 RoleId RoleName现在我要在aspx页面显示一个GridView有三列数据 UserId UserName RoleName
我获取 List<UserInfo> 并不包含RoleName的属性。我应该怎么做?要另外再写个实体来对应它们吗?如果我又需要增加显示一列别的什么数据,难道我又要再写一个实体类吗?真不知道实体类该怎么抽象出来。这方面的知识不知该怎么学习?
我眼中只看到数据库。我从来都不相信ORM,我只信任自己看到的结果,只信任数据库。
你把数据放在数据库里,却不想去弄清楚他,而是弄个作为ORM来犹抱琵琶半遮面有什么意思,只调情说爱,不真正的把她脱光看个一清二楚,并且实践调试。就做不好真正的数据库开发。要真正写好系统,必须深入数据库的核心。ORM只是为了提供生产力提供的工作分工的工具,是为不懂数据库的程序员设计的。
ASP.NET WebForm和ASP.NET MVC分页最终解决之道
实际上对于开发来说,我们是只用合适的,而不是只用贵滴,大滴
--------------------
Entity Framework前年就用过了,不是很成功,主要是我们的查询太复杂,使用它效率比较低,可能是我们的OO水平不够,都是将复杂的SQL转成对应的LINQ语法的,但这是历史问题,没辙。现在我们公司的项目都用PDF.NET数据开发框架,操作单表的CRUD使用OQL表达式去操作实体类,复杂的连表查询、存储过程、自定义函数调用使用SQL-MAP技术,效率与灵活性兼容,喜欢ORM的用OQL技术,喜欢SQL的用SQL-MAP技术。
个人觉得什么框架都是死的 ,关键是适合自己项目的框架才是最好的
已经有很多朋友下载了,并获得了很多好评,你可以先下载研究下,如果需要使用最新版本的框架程序源码,请看官网http://www.pwmis.com/sqlmap 说明如何获取。
“n年前我也想lz一样困惑于数据库和对象的关系,发了一个帖子,sp1234大大劈头就是一通,让我去看看到底啥叫实体,我看了开始不理解,现在很明白了,我得谢谢sp1234大大”
现在我对实体、orm 也挺困惑的,能否提供些书籍、资料或学习方法? 非常感谢!
这些都是第三方弄着玩的,如果你感兴趣可以了解。不入.net framework流。
什么orm都不会
其实这些所谓orm框架确实是虚的,一方面它是公司研发产物,需要眼球关注,n年一样总比年年出新吸引人吧。另一方面orm怎么说也是建立在抽象的基础上,应该说各有各的适用场景,也并不代表相互之间水火不容,怎么选择完全可以根据实际情况。
我也是在一小公司,但是接到的项目各有不同,有的功能简单要求很急人手也不够,怎么办,linq to sql拖拖拽拽调调页面ok了。有的是自己为了申报项目做的,怎么办,什么新什么牛叉用什么,到时候验收材料才有看头好通过。
所以说,什么框架无所谓,关键你得培养你那个脑子,能在一定的时间内掌握这个框架,再进一步能精通这个框架,之后也可以考虑根据需要修改或者做自己的框架了。
你实体类设计有问题
user和role是个多对多的关系,实体类应该得以体现
这个还真的没有,因为如果是实体对象的,主要还是站在对象设计层面上,而ORM只是一个实现上必须有,但设计可以无的东西(实际上在OOAD层面上,就像vrhero所说,虚无和形而上的东西比较多,只关心抽象的逻辑,而不怎么关心具体的数据存取)具体的可以看《领域驱动设计与实践》这类书籍
实际上无论TDD还是DDD,或这企业级架构设计这块还是有很多有名的专著的,我之所以介绍这本《领域驱动设计与实践》因为他一个综合分析实践书,以实践分析为主,比较少涉及那些即使现在还在争论的理论,而且跨度也比较大,包括 领域驱动分析(DDD),TDD测试驱动开发,POCO实体对象,AOP等比较有实际意义的并可操作的思路和手法
《领域驱动设计与模式实战》
http://product.china-pub.com/192983这本书的中文翻译上是有点问题,不过大体上也可以看,就像上面讲的他不是这方面理论知识的权威书籍,而是具体实践,所使用的思路和手段更偏重于可实践可操作。
BORLAND的J2EE ENTITY BEAN N年前就实现的东西,微软现在才搞