• Many to many example 1 of 4


    <?xml version="1.0" encoding="utf-8" ?>
    <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" namespace="TstDBConnection.Entities" assembly="TstDBConnection">
      <class name="Product" table="Product">
        <id name="Id" column="Id">
          <generator class="guid.comb"/>
        </id>
        <property name="Name" column="Name"></property>
        <bag name="Orders" generic="true" table="ProductOrder" cascade="save-update">
          <key column="ProductId" />
          <many-to-many column="OrderId" class ="Order" />
        </bag>
      </class>
    </hibernate-mapping>
    <?xml version="1.0" encoding="utf-8" ?>
    <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" namespace="TstDBConnection.Entities" assembly="TstDBConnection">
      <class name="Order" table="[Order]">
        <id name="Id" column="Id">
          <generator class="guid.comb"/>
        </id>
        <property name="Name" column="Name"></property>
        <bag name="Products" generic="true" table="ProductOrder" cascade="save-update">
          <key column="OrderId" />
          <many-to-many column="ProductId" class ="Product"/>
        </bag>
      </class>
    </hibernate-mapping>
    namespace TstDBConnection.Entities
    {
        public class Order
        {
            public virtual Guid Id { get; set; }
            public virtual string Name { get; set; }
            public virtual IList<Product> Products { get; set; }
        }
    }
    namespace TstDBConnection.Entities
    {
        public class Product
        {
            public virtual Guid Id { get; set; }
            public virtual string Name { get; set; }
            public virtual IList<Order> Orders { get; set; }
        }
    }
            public static void TestMany2Many(ISessionFactory sessionFactory)
            {
                using (ISession session = sessionFactory.OpenSession())
                {
                    Product product = new Product() { Name = "A product" };
                    Order order = new Order()
                    {
                        Products = new List<Product>() { product },
                        Name = "Coffee CupBox"
                    };
                    var id = session.Save(order);
                    session.Flush();
                }
            }
            static void Main(string[] args)
            {
                log4net.Config.XmlConfigurator.Configure(); // log4net
                Configuration configuration = new Configuration();
                configuration.Configure();
                ISessionFactory sessionFactory = configuration.BuildSessionFactory();
    
                TestMany2Many(sessionFactory);
    
                sessionFactory.Close();
            }

  • 相关阅读:
    广义斐波那契数列 矩阵乘法
    GCD
    [SDOI2008]沙拉公主的困惑 线性筛_欧拉函数_逆元_快速幂
    [SDOI2008]仪仗队 欧拉函数
    洛谷P2617 Dynamic Rankings 主席树 单点修改 区间查询第 K 大
    洛谷P3919 【模板】可持久化数组(可持久化线段树/平衡树)
    Codevs 3269 混合背包
    洛谷P3834 【模板】可持久化线段树 1 主席树
    矩形面积求并 扫描线 + 过不去
    灾后重建 Floyd
  • 原文地址:https://www.cnblogs.com/webglcn/p/2673392.html
Copyright © 2020-2023  润新知