重复参考键-Fluent NHibernate自动映射
我在fluent和reference key中自动映射时遇到问题。例如:重复参考键-Fluent NHibernate自动映射,nhibernate,duplicates,fluent,automapping,Nhibernate,Duplicates,Fluent,Automapping,我在fluent和reference key中自动映射时遇到问题。例如: public class ConfigurationCategory { public virtual Guid Id { get; private set; } [NotNull] public virtual String Name { get; set; } public virtual String Description { get; set; } public vir
public class ConfigurationCategory
{
public virtual Guid Id { get; private set; }
[NotNull]
public virtual String Name { get; set; }
public virtual String Description { get; set; }
public virtual String Icon { get; set; }
public virtual ConfigurationCategory Parent { get; set; }
public virtual IList<ConfigurationCategory> Children { get; private set; }
public ConfigurationCategory()
{
Children = new List<ConfigurationCategory>();
}
}
为什么ConfigurationCategory会重复?我没有使用fluent自动映射,但我猜它会被您同时拥有父属性和子属性的事实所迷惑;我猜fluent无法判断它们是否都应该由数据库中的同一列处理 您可能需要创建一个类映射,并为References()和HasMany()调用指定键列名
CREATE TABLE "ConfigurationCategory"
...
parent_id uuid,
configurationcategory_id uuid,
CONSTRAINT "ConfigurationCategory_pkey" PRIMARY KEY (id),
CONSTRAINT fk6ccc850055890dc8 FOREIGN KEY (configurationcategory_id)
REFERENCES "ConfigurationCategory" (id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT fk6ccc8500ee71b726 FOREIGN KEY (parent_id)
REFERENCES "ConfigurationCategory" (id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION