当前位置:  开发笔记 > 前端 > 正文

NHibernate:坚持与孩子对象

如何解决《NHibernate:坚持与孩子对象》经验,为你挑选了1个好方法。



1> Frederik Ghe..:

在集合上指定级联,让NHibernate为您解决问题

http://ayende.com/Blog/archive/2006/12/02/NHibernateCascadesTheDifferentBetweenAllAlldeleteorphansAndSaveupdate.aspx

http://www.hibernate.org/hib_docs/nhibernate/1.2/reference/en/html/example-parentchild.html

好的,我已经看到你已经做到了.:)你没有做的,是指定反向引用.我的意思是:你在你的收藏中添加了一个项目,但这个添加的项目有一个属性给它的主人,你没有设置:

Order o = new Order();

OrderDetail detail = new OrderDetail ();

detail.Order = o;
o.OrderLines.Add (detail);

什么会更好(imho)是这(简化):

public class Order
{
    private IList _details = new List();

    public ReadOnlyCollection Details
    {
       return new List(_details).AsReadOnly();
    }

    public void AddOrderLine( OrderDetail d )
    {
        d.Order = this;
        _details.Add (d);
    }

    public void RemoveOrderLine( OrderDetail d )
    {
        _details.Remove (d);
    }
}

推荐阅读
凹凸曼00威威_694
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有