![](/img/trans.png)
[英]The element 'class' in namespace 'urn:nhibernate-mapping-2.2' has invalid child element 'property'
[英]error “The element 'class' in has invalid child element 'set' in namespace ” when mapping hbm file
H想在我的应用程序中使用继承,但是当我运行时,我的hbm映射文件有错误。 我的代码在这里
public class StudentDao
{
public virtual int Id { get; set; }
public virtual string FirstName { get; set; }
public virtual string LastName { get; set; }
public virtual StudentDegreeType Degree { get; set; }
public virtual string Field { get; set; }
public virtual IEnumerable<StudentCourse> StudentCourses { get; set; }
我的映射文件是:
<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping assembly="Tosan.Sevrice.DataAccess" namespace="Tosan.Sevrice.DataAccess.Dao" xmlns="urn:nhibernate-mapping-2.2">
<class name="StudentDao" table="STUDENTT" lazy="true" >
<id name="Id" column="ID" >
<generator class="increment"> </generator>
</id>
<discriminator column="Degree"/>
<property name="FirstName" column="FIRSTNAME" />
<property name="LastName" column="LASTNAME" />
<!--<property name="Degree" column="DEGREE" />-->
<property name="Field" column="FIELD" />
<subclass name="MasterStudent" discriminator-value="1">
<property name="َArticle" />
</subclass>
<subclass name="BachelorStudent" discriminator-value="2">
</subclass>
<set name="StudentCourses" table="StudentCourse" inverse="true" cascade="all,delete-orphan">
<key column="ID"/>
<one-to-many class="StudentCourse"/>
</set>
</class>
</hibernate-mapping>
我在文件映射“设置”中使用了关系标签
我的孩子班是:
public class BachelorStudent : StudentDao
{
}
}
下一个孩子班:
public class MasterStudent : StudentDao
{
public virtual bool Article { get; set; }
}
}
在我运行此错误波纹管出来后:
“名称空间'urn:nhibernate-mapping-2.2'中的元素'class'在名称空间'urn:nhibernate-mapping-2.2'中具有无效的子元素'set'。可能的元素列表:'子类,加载器,sql-insert ,命名空间“ urn:nhibernate-mapping-2.2”中的sql-update,sql-delete,过滤器,结果集,查询,sql-query”。
我该怎么办??
set元素需要在子类元素之前定义。 即:
<set name="StudentCourses" table="StudentCourse" inverse="true" cascade="all,delete-orphan">
<key column="ID"/>
<one-to-many class="StudentCourse"/>
</set>
<subclass name="MasterStudent" discriminator-value="1">
<property name="َArticle" />
</subclass>
<subclass name="BachelorStudent" discriminator-value="2">
</subclass>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.