[英]NHibernate mapping with a class hierarchy whose base class is abstract and the discriminator is not a string
[英]Inheritance with NHibernate mapping and Abstract class
我试图映射一个将继承其他两个类的类,我希望将其抽象化,这样我将能够返回包含两种类型的子对象的列表,并在父类中使用区分符对它们进行相应的转换。
这是我的域模型:
public class Person
{
public int id {get; set;}
public string name{get; set;}
}
public class Teacher : Person
{
public string subject{get; set;}
}
public class Student : Person
{
public string grade{get; set;}
}
而我的Nhibernate映射:
<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping namespace="Domain.Model" assembly="Domain" xmlns="urn:nhibernate-mapping-2.2" auto-import="false">
<class name="Person" table="`Person`" schema="`PR`">
<id name="id" access="property" column="`id`">
<generator class="identity"/>
</id>
<property name="id" type="int" column="`id`" />
<property name="name" type="String" column="`name`" />
<joined-subclass name="Teacher" table="`Teacher`" schema="`PR`">
<key column="`id`" />
<property name="subject" type="String" column="`subject`" />
</joined-subclass>
<joined-subclass name="Student" table="`Student`" schema="`PR`">
<key column="`id`" />
<property name="grade" type="String" column="`grade`" />
</joined-subclass>
</class>
</hibernate-mapping>
我希望将“ Person”类抽象化,这样我就可以拥有一个可以包含两个子类型的列表,但是我不确定该怎么做
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.