2
Nhibernate in Action을 읽었지만 다형성 컬렉션 매핑에 대한 섹션은이 작업을 수행하는 방법에 대해서는 너무 짧습니다.nhibernate에서 추상 클래스 컬렉션을 매핑하는 방법
은 내가 오류를 받고 있지 않다 위의 코드를 다음 코드
[Class]
[Discriminator(Column="MachineType",TypeType=typeof(string))]
public abstract class Machine
{
[Property]
public string Name{get;set;}
}
[Subclass(DiscriminatorValue="Heavy",ExtendsType=typeof(Machine))]
public class HeavyMachine : Machine
{
[Property]
public int Weight { get; set; }
}
[Subclass(DiscriminatorValue="Fast",ExtendsType=typeof(Machine))]
public class FastMachine : Machine
{
[Property]
public float Speed { get; set; }
}
[Class]
public class Module
{
List<Machine> machines = new List<Machine>();
[Bag(Name = "Machines", Cascade = "all", Lazy = false, Inverse=true)]
[Key(1, Column = "Machine")]
[OneToMany(2, ClassType = typeof(Machine))]
public IList<Machine> Machines
{
get
{
return machines.AsReadOnly();
}
private set
{
machines = value.ToList();
}
}
}
을 가지고 있지만 모듈에서 기계의 컬렉션 데이터베이스에서 내 개체를 불러 오는 한 후 비어 있습니다. Machine 유형의 등록 정보가 올바르게 리턴 되었기 때문에 Machine (및 그 서브 클래스)의 맵핑은 정상적으로 보입니다.
내 추상 클래스 모음을 매핑하는 데 필요한 Nhibernate.Mapping.Attributes는 무엇입니까?
미리!