谢谢指教!

解决方案 »

  1.   

    for me, 强类型DATASET is 自定义实体you need to know strong typed dataset is actually a customized dataset that VS.NET creates for you, and it packs all customized entities inside; you could do the same thing by yourself. why bother to ask which is better?
      

  2.   

    在2003种强类型的Dataset不够灵活,使用麻烦,建议自定义
    在2005种强类型的Dataset有了很大的改进,使用也非常方便,如果不是非常复杂的应用,建议使用
      

  3.   

    看看MSDN上 自定义实体类,掌握ASP.NET之路 这篇文章。
      

  4.   

    微软的两个例子:
    Duwamish使用强类型
    PetShop 使用自定义实体自定义实体使用起来更灵活,而强类型的功能更强大。到底谁比谁好还真不好说,看具体应用和个人习惯了。
      

  5.   

    to zeusvenus(清柳)(C#/ASP.NET) 已经阅读过那篇文章,文章中为了
    强调custom entity的重要性,没有对自定义实体和strong typed dataset进行比较.
    to charles_y(难得糊涂) 我也有这种倾向,无法泛泛说明两者优劣,也行我也只是想
    根据大家的经验之谈来取得一些有用的信息吧:)
    又,DUWAMISH中的数据实体不能算做标准的所谓强类型吧?那似乎也是自定义实体的范围
    只不过它们是继承自DATASET而已.
      

  6.   

    文章中为了强调custom entity的重要性,没有对自定义实体和strong typed dataset进行比较.
    》》http://blogs.wdevs.com/angelos/archive/2005/03/10/2685.aspx
      

  7.   

    http://www.msdn.net/msdnmag/issues/05/08/CuttingEdge/default.aspx
      

  8.   

    我也是用自定义的,也用过强类型dataset,我觉得项目非常简单,还是用强类型dataset,否则还是用自己定义的,的确比较灵活。
      

  9.   

    简单的项目使用typed dataset,复杂的我就使用自定义实体了。只能根据项目的实际情况来看
      

  10.   

    to LoveCherry(论成败,人生豪迈;大不了,重头再来!^_^) 
    谢谢提供的连接,文章很好,让我有了概念上的了解TO lyb_abiandbel(渴望成为高手) ,jonas401(寒梅只为伊人香) ,AND lhcoolhacker(hugh-lin)Strong Typed Dataset or Custom Entity, which one is better,is really a dilemma:)我想如果只谈开发本身,如何决定大致可以从两个方面考虑:1.复杂度;2.数据量
      

  11.   


    如果复杂度、数据量都很大,那么建模的时候完全是用 custome entity 非常好、直观,而且OOA和OOP都很直观,能够准确捕捉到业务内涵。但是一旦和数据库联系上,难度就增大,就算是用NHibernate和IBatics,编写的代码都比较费劲,因为考虑到统计、查询、解耦等问题,表的设计有时候不得不好退而求次,而且对索引,Id建立都比较考究。当然那是对数据量很大的情况下,一次对数据表超过500w查询的时候考虑,(我面对的大概也就是500w左右)。
    总的来说,对于这种复杂度、数据量都很大的情况,我认为custome entity是个不错的选择,因为可以很容易把问题归纳,分析和建模都很容易,只是编程较难。不过我认为简单模型+局部复杂算法比 局部简单算法+复杂模型 的组合要好。至于强类型dataset,有两个不太好,在同样的数据量下,他占内存比较多,这个没有认真计算过,但是强类型dataSet的与业务部无关的算法是比较多的。但是他直接映射DB,对于大部分的程序员来说学习曲线比较低,是直接映射DB的。不过,它却无法真实反映现实模型,如果对于那些很专业的业务来说。很多刚入行的程序员就无法直接通过强类型DataSet了解真实业务的情况。当然也不是说custome entity一定能够,不过我相信,这个难度会比强类型DataSet要低得多。对于很多统计、查询等工作来说,反而变得简单,因为无需考虑太多面向对象的原则。但是重用率就较低。以上只是我个人看法。
      

  12.   

    to fantasylu(沉默的糕点) 
    谢谢你的回答.对于强类型dataset,我不认为它有任何的重用率;对于CUSTOM ENTITY,即使存在重用的
    可能性,其优势也会随着数据结构复杂度的增大和不断调整的数据库设计所抵消.在开发成本和性能间做平衡似乎是我们永远面对的难题.复杂度低而数据量很大,似乎应该考虑CUSTOM ENTITY;而复杂度很高,数据量很小,强类型dataset应该好一些.对于这种复杂度、数据量都很大的情况,我觉得就如你所说,不只是一个数据实体能完全解决
    的问题了:)再次谢谢你的回答!
      

  13.   

    都有优势的话,可以合起来撒
    Custom Entity这个是少了不,然而为了操作方便,比如查询和UI实现,我会把Entity对象集封装为Strong Typed DataSet,单对象用Entity,集合处理用EntitySet
      

  14.   

    micropentium6(小笨|曾经的美好) 可能笔误.
    应该说成:Customer Entity 更容易写成可重用
    而强类型DataSet,更容易编写