【发布时间】:2009-06-26 06:01:49
【问题描述】:
我有以下数据库表。主键是 ID,AnimalType.Type 是唯一的字符串。
Animal
- ID
- Name
- TypeID
AnimalType
- ID
- Type [Herbivore, Carnivore]
我的课如下。
public class Animal
{
public int ID { get; private set; }
public string Name { get; set; }
public AnimalType Type { get; set; }
}
public class AnimalType
{
private int ID { get; set; }
public string Type { get; set; }
}
如何让以下代码在 NHibernate 中工作,以便它引用 Herbivore 的相同 AnimalType?
var horse = new Animal() { Name = "Horse", Type = new AnimalType() { "Herbivore" }};
repository.SaveOrUpdate(horse);
var rabbit = new Animal() { Name = "Rabbit", Type = new AnimalType() { "Herbivore" } };
repository.SaveOrUpdate(rabbit);
更新
如果我能让 NHibernate 执行此逻辑,那就太好了:http://andreas.scherbaum.la/blog/archives/11-Avoid-Unique-Key-violation.html
【问题讨论】:
标签: nhibernate domain-driven-design