NHibernate袋收集为空

NHibernate袋收集为空,nhibernate,nhibernate-mapping,Nhibernate,Nhibernate Mapping,当我尝试使用NHibernate包时,我遇到了一个奇怪的问题 映射 <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" namespace="FMG.APO.Dao.Domain" assembly="FMG.APO.Dao"> <class name="Constraint" table="rConstraintItems" lazy="false"> <id name="Id" ty

当我尝试使用NHibernate包时,我遇到了一个奇怪的问题

映射

<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" namespace="FMG.APO.Dao.Domain" assembly="FMG.APO.Dao">
    <class name="Constraint" table="rConstraintItems" lazy="false">
        <id name="Id" type="Int32" unsaved-value="0">
            <column name="ConstraintItemID" sql-type="int" not-null="true"  />
            <generator class="native" />
        </id>
        <many-to-one name="ConstraintGroup" class="ConstraintGroup">
            <column name="ConstraintGroupID" sql-type="int" not-null="false" />
        </many-to-one>

        <many-to-one name="Fund" class="Fund">
            <column name="FundID" sql-type="int" not-null="true" />
        </many-to-one>
        <property name="LowerLimit" type="double">
            <column name="LowerLimit" sql-type="decimal" not-null="true"/>
        </property>
        <property name="UpperLimit" type="double">
            <column name="UpperLimit" sql-type="decimal" not-null="true"/>
        </property>
        </class>
</hibernate-mapping>


阶级

 public class ConstraintGroup
    {
 private int id;

    public int Id
    {
        get { return id; }
        set { id = value; }
    }

    private int planID;

    public int PlanID
    {
        get { return planID; }
        set { planID = value; }
    }
    private string groupDescr;

    public string GroupDescr
    {
        get { return groupDescr; }
        set { groupDescr = value; }
    }


    protected IList<Constraint> constraints;
    public IList<Constraint> Constraints
    {
        get
        {
            if (constraints == null)
            {
                constraints = new List<Constraint>();
            }
            return constraints;
        }
        set { constraints = value; }
    }
}
公共类约束组
{
私有int-id;
公共整数Id
{
获取{return id;}
设置{id=value;}
}
私有平面;
公共平面图
{
获取{return planID;}
设置{planID=value;}
}
私有字符串groupDescr;
公共字符串GroupDescr
{
获取{return groupDescr;}
设置{groupDescr=value;}
}
受保护的IList约束;
公共IList约束
{
收到
{
if(约束==null)
{
约束=新列表();
}
回报约束;
}
设置{constraints=value;}
}
}

我有两个相同的数据库(我反复检查和比较)。该包在我的测试数据库中填充,但在我的生产数据库中为空。有人能帮我弄清楚吗?我真的被卡住了

地图上的包在哪里?很抱歉,我是这个网站的新手。地图现在应该显示行李了。感谢您的帮助。映射似乎还可以,请尝试在查询级别启用日志记录,以查看发布到dbmapping的内容是否正常-您是否通过log4net启用日志记录并捕获生成的SQL语句。还要验证数据库中的数据,即检查是否有映射到queired constraint group的约束。您可以使用下面的链接生成sql语句映射中的包在哪里?很抱歉,我是此站点的新手。地图现在应该显示行李了。感谢您的帮助。映射似乎还可以,请尝试在查询级别启用日志记录,以查看发布到dbmapping的内容是否正常-您是否通过log4net启用日志记录并捕获生成的SQL语句。同时验证数据库中的数据,即检查是否有映射到查询约束组的约束。您可以使用下面的链接生成sql语句
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" namespace="FMG.APO.Dao.Domain" assembly="FMG.APO.Dao">
    <class name="ConstraintGroup" table="rConstraintGroups" lazy="false">
        <id name="Id" type="Int32" unsaved-value="0">
            <column name="ConstraintGroupID" sql-type="int" not-null="true"  />
            <generator class="native" />
        </id>
        <property name="PlanID" type="Int32">
            <column name="PlanID" sql-type="int" not-null="true"/>
        </property>
        <property name="GroupDescr" type="String">
            <column name="GroupDescr" length="100" sql-type="nvarchar"/>
        </property>
        <bag name="Constraints" inverse="true" lazy="true" cascade="all">
            <key column="ConstraintGroupID"/>
            <one-to-many class="Constraint" />
        </bag>
    </class>
</hibernate-mapping>
 public class ConstraintGroup
    {
 private int id;

    public int Id
    {
        get { return id; }
        set { id = value; }
    }

    private int planID;

    public int PlanID
    {
        get { return planID; }
        set { planID = value; }
    }
    private string groupDescr;

    public string GroupDescr
    {
        get { return groupDescr; }
        set { groupDescr = value; }
    }


    protected IList<Constraint> constraints;
    public IList<Constraint> Constraints
    {
        get
        {
            if (constraints == null)
            {
                constraints = new List<Constraint>();
            }
            return constraints;
        }
        set { constraints = value; }
    }
}