C# 具有复合键和集合的nHibernate映射
我在尝试映射这个包含guid集合的对象时遇到问题。我的映射工作正常,没有错误,但是我一直在将空GUID插入OrganizationAdvertisints表中的OrganizationId中。我想知道如何正确地映射这个集合C# 具有复合键和集合的nHibernate映射,c#,asp.net,sql-server,nhibernate,nhibernate-mapping,C#,Asp.net,Sql Server,Nhibernate,Nhibernate Mapping,我在尝试映射这个包含guid集合的对象时遇到问题。我的映射工作正常,没有错误,但是我一直在将空GUID插入OrganizationAdvertisints表中的OrganizationId中。我想知道如何正确地映射这个集合 <?xml version="1.0" encoding="utf-8" ?> 广告和组织之间会有多对多的关系吗?如果是,您已经有了另一个类:Organization,并设置了这两个类之间的多对多关系,并且不需要映射OrganizationID。你的班
<?xml version="1.0" encoding="utf-8" ?>
广告和组织之间会有多对多的关系吗?如果是,您已经有了另一个类:Organization,并设置了这两个类之间的多对多关系,并且不需要映射OrganizationID。你的班级将会是这样的:
class Advertisement
{
//other properties
public virtual ISet<Organization> Organizations {ge;set}
}
班级广告
{
//其他属性
公共虚拟ISet组织{ge;set}
}
还有你的地图:
<class name="Advertisement" table="Advertisement" lazy="false">
<id name="Id">
<generator class="guid"></generator>
</id>
<property name="DateStart"/>
<property name="DateExpired"/>
<property name="Title"/>
<property name="Body"/>
<set name="Organizations"
table="OrganizationAdvertisements"
lazy="true">
<key column="AdvertisementId" />
<many-to-many class="Namespace.Organization"
column="OrganizationID" />
</set>
</class>
可能不是GUID而是UUID?
<class name="Advertisement" table="Advertisement" lazy="false">
<id name="Id">
<generator class="guid"></generator>
</id>
<property name="DateStart"/>
<property name="DateExpired"/>
<property name="Title"/>
<property name="Body"/>
<set name="Organizations"
table="OrganizationAdvertisements"
lazy="true">
<key column="AdvertisementId" />
<many-to-many class="Namespace.Organization"
column="OrganizationID" />
</set>
</class>