zoukankan      html  css  js  c++  java
  • NHibernate一对多映射保存数据

    • Iesi.Collections.Generic.Iset<T>使用

        Iset集合中,每个对象唯一。

        在NHibernate中,在父类中对应子类的Iset集合时,因为Set类为抽象类,所以不能实例化Set类。

        Iset<T> list=new Set<T>()将报‘无法创建抽象类或接口“Iesi.Collections.Generic.Set<>”的实例’错误。

        HashedSet<T>继承于DictionarySet<T>抽象类;DictionarySet<T>抽象类继承于Set<T>抽象类;Set<T>抽象类继承于Iset<T> 接口。所以Iset<T>接口可以实现为:ISet<T> list = new HashedSet<T>()。

    • 父端级联保存对象

        当从父类中保存数据时,因为nhibernate先插入父表数据,然后插入外键为null的子表数据,然后在生成更新子表的update语句。所以外键必须能够为null,否则将报错。

        当父端inverse="true"时将只生成插入语句,不会生成更新外键的update语句,所以必须inverse="false"。

  • 相关阅读:
    B树,B+树
    中断
    死锁
    无锁队列
    Cookie和Session
    分布式系统一致性
    c++ 标准库迭代器失效
    html5 app图片预加载
    html5 手机APP计算高度问题
    html5 750 REM JS换算方法
  • 原文地址:https://www.cnblogs.com/wanghonghu/p/2717636.html
Copyright © 2011-2022 走看看