阿扁听说持久化对象技术很迷人,正打算在一个实际项目中应用它。
前一段时间曾粗略地看了一下 XPO 的资料,个人认为还是不错的。目前所知道的实现有 NHibernate, NPersist, DevExpress XPO 这三种,不知其中哪一个更有可用性?还有没有其他可选项?现在在实际项目中应用此技术是否在时机上确已成熟?据说 .Net 2.0 中将包含一个称为 ObjectSpaces 的东西,也是类似的技术,不知是否是真?个人时间和精力都有限,不可能一一试过再作决定。
希望有此方面应用经验的达人指点一二。
也希望对此方面感兴趣者一同学习控讨。

解决方案 »

  1.   

    强烈关注,正准备入手NHibernate呢?
    各位有什么资料没有?相关的文档不是很多啊
      

  2.   

    有些朋友正在大胆使用,目前 .NET 的 O/R Mapping 技术还不成熟,所以一直没有使用。
      

  3.   

    TO Sunmast(速马|AIR SUPPLY!) :我在其他帖上看到有人说你在研究这个,不知能否说详细一点。
    如果必须选择,哪一个更合适?
      

  4.   

    有个很严重的疑问,不知道NHibernate是如何处理dataset更新的????
      

  5.   

    有个很严重的疑问,不知道NHibernate是如何处理dataset更新的????
    我是指将dataset的变化更新到数据库。
      

  6.   

    Novell的Mono项目有一个更前卫的东西,纯OO数据库DB4O
    http://www.mono-project.com/DB4O
      

  7.   

    NHibernate不处理DateSet的。所有数据都是IList里面的对象。一个对象就是一行数据
      

  8.   

    http://blog.sunmast.com/Sunmast/archive/2005/03/22/1365.aspx
      

  9.   

    纯OO的数据库很早以前就有人在做了
    还有所谓的XML数据库但都不可能成为主流,性能才是数据库最重要的指标
      

  10.   

    速马有兴趣时不妨看看那个DB4O,它比较有趣的地方是和.net/Java完全集成。
    具体到有些业务,性能也不是最重要的,呵呵,不要太差就好了。
      

  11.   

    用NHibernate吧,性能很好,现在已经4beta了。
      

  12.   

    XPO装了,看了下,觉得离实际应用有点距离,概念比较新
    学习ing
      

  13.   

    正在研究nhibernate中,共同学习进步。
      

  14.   

    看了速马的 BLOG,似乎看得出作者想说 NHibernate 的目标远大但有点不切实际(也可能我理解上有问题)。我相信 NHibernate 是相当复杂的,应用起来并不是容易的,(这仅是我的直觉),所以至今仍未真正与其亲密接触,在没有足够的理由之前,我不会浪费时间的。(我一直认为自己只是一个工程技术人员,而不是研究所的研究人员。)我稍对 XPO 作了一些学习,觉得还是可以用的。原来曾有过全面采用 XPO 的幼稚想法,但后来发现也是不切实际的。在数据表示模块中可能可以如此,但在核心算法上是万万用不得的(性能至上),这就必须自行实现一个可在 XPO 对象和算法对象之间转译数据的中间件。
    XPO 中的查询条件实现很不错,大数据对象的延迟加载也是一个不错的特色。能支持 SQL Server/Access,这对于我而言,其实已经足够了。我相信 XPO、NPersist 的开发者肯定也曾对 NHibernate 作过深入的研究,他们可能认为 NHibernate 的研究性大于实用性,所以有必要剔除 NHibernate 中的不妥之处,重做一个实用的 O/R Mapping 实现。我很期待 XPO 2.0,DevExpress 给我的印象一直不错。我知道在实际项目中应用 O/R Mapping 技术,目前而言风险真的不小。但我真的很想用,就象当初早早地接触 .Net 一样,而不是等待 .NET 所谓的成熟。提高模块之间的正交性,可能是当前降低风险的最好办法。尽力而为吧。
      

  15.   

    nihbernate现在还是beta,而且也有大牛说他的代码编得乱七八糟,这些估且不说,单凭他的beta,就证明他离真正的实际应用还有很长的距离。
    如果真的要用,我到是觉得可以等objectspace。
      

  16.   

    还有一个是:EntityBroker,
    网址:http://www.thona-consulting.com/content/products/entitybroker.aspx
    这个thona是WWW.ASP.NET里边很牛的人。其实关于DataSet和O/R Mappers的争论已经存在很久了,而且争论不休。用DataSet得人大体上是考虑它的好用,强大,而且支持Serialize。而另外的人则感觉用DataSet后,就不是那么OO了, 其实也对,用了DataSet就不是那么严格的复合原来的 OO的感念了。如果你感兴趣,可以用google 直接查询:Datasets vs. Custom Entities,会找到很多文章关于两者的辩论。
    这里还有一个是比较: NHibernate, LLBLGen Pro, 和EntityBroker的:
    http://weblogs.asp.net/pwilson/archive/2005/01/08/349145.aspx
      

  17.   

    目前我正在使用nhibernate做项目,应用良好。nhb是不错的选择。
      

  18.   

    我正在准备在一个项目中使用nHibernate,之所以选择它,因为它是开源的。