У меня есть asp.net-приложение и добавлена библиотека с объектами домены и xml-файлами.NHibernate.MappingException Не удалось определить тип для: Entity
трассировка:
Message=Could not determine type for: VaLibrary.Core.Domain.VAEmpresa, VaLibrary, Version=1.0.5.18335, Culture=neutral, PublicKeyToken=null, for columns: NHibernate.Mapping.Column(IdDev)
Источник = NHibernate
я поиск в веб-же ошибки, но решения для других вариантов отображения (свободно, замок и т.д.) не для XML
мой класс Код здесь
using System;
using System.Text;
using System.Collections.Generic;
namespace VaLibrary.Core.Domain {
public class VAEmpresa {
private int? _id;
private string _nombre;
private string _tipo;
public VAEmpresa() {
VAJu_Dev = new List<VAJu>();
VAJu_Pub = new List<VAJu>();
}
public virtual int Id {
get {
return (int)this._id;
}
set {
this._id = value;
}
}
public virtual string Nombre {
get {
return this._nombre;
}
set {
this._nombre = value;
}
}
public virtual string Tipo {
get {
return this._tipo;
}
set {
this._tipo = value;
}
}
public virtual IList<VAJu> VAJu_Dev { get; set; }
public virtual IList<VAJu> VAJu_Pub { get; set; }
}
}
и ссылка:
using System;
using System.Text;
using System.Collections.Generic;
namespace VaLibrary.Core.Domain {
public class VAJu {
private int? _id;
private VAEmpresa _idDev;
private VAEmpresa _idPub;
private VACon _vACon;
private string _titulo;
private int _numerop;
public VAJu() {
VApllist = new List<VApllist>();
}
public virtual int Id {
get {
return (int)this._id;
}
set {
this._id = value;
}
}
public virtual VAEmpresa IdDev {
get {
return this._idDev;
}
set {
this._idDev = value;
}
}
public virtual VAEmpresa IdPub {
get {
return this._idPub;
}
set {
this._idPub = value;
}
}
public virtual VACon VACon {
get {
return this._vACon;
}
set {
this._vACon = value;
}
}
public virtual string Titulo {
get {
return this._titulo;
}
set {
this._titulo = value;
}
}
public virtual int Numerop {
get {
return this._numerop;
}
set {
this._numerop = value;
}
}
public virtual IList<VApllist> VApllist { get; set; }
}
}
Отображения файлы:
<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping assembly="VaLibrary" namespace="VaLibrary.Core.Domain" xmlns="urn:nhibernate-mapping-2.2">
<class name="VAEmpresa" table="VA-Empresa" lazy="true" >
<id name="Id" column="Id">
<generator class="identity" />
</id>
<property name="Nombre">
<column name="nombre" sql-type="varchar" not-null="true" />
</property>
<property name="Tipo">
<column name="tipo" sql-type="varchar" not-null="false" />
</property>
<bag name="VAJu_Dev" inverse="true" cascade="none">
<key column="IdDev" />
<one-to-many class="VaLibrary.Core.Domain.VAJu, VaLibrary" />
</bag>
<bag name="VAJu_Pub" inverse="true" cascade="none">
<key column="IdPub" />
<one-to-many class="VaLibrary.Core.Domain.VAJu, VaLibrary" />
</bag>
</class>
</hibernate-mapping>
и
<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping assembly="VaLibrary" namespace="VaLibrary.Core.Domain" xmlns="urn:nhibernate-mapping-2.2">
<class name="VAJu" table="VA-Ju" lazy="true" >
<id name="Id" column="Id">
<generator class="identity" />
</id>
<property name="Titulo">
<column name="Titulo" sql-type="varchar" not-null="true" />
</property>
<many-to-one insert="false" update="false" lazy="false" name="IdDev">
<column name="IdDev" sql-type="int" not-null="true" />
</many-to-one>
<property name="IdDev">
<column name="IdDev" sql-type="int" not-null="true" />
</property>
<many-to-one insert="false" update="false" lazy="false" name="IdPub">
<column name="IdPub" sql-type="int" not-null="true" />
</many-to-one>
<property name="IdPub">
<column name="IdPub" sql-type="int" not-null="true" />
</property>
<property name="Numerop">
<column name="numero-p" sql-type="int" not-null="true" />
</property>
<bag name="VApllist" inverse="true" cascade="none">
<key column="IdJu" />
<one-to-many class="VApllist" />
</bag>
</class>
</hibernate-mapping>
relantionship в БД: Ва-Ju.IdDev ФК к VA-Empresa.Id PK va- JU.IdPub FK к VA-Empresa.Id PK
Я пытаюсь изменить для , но это sa меня.
Я могу это сделать?
Большое спасибо за ваши ответы
[Редактировать]
я использую Nhibernate 3,2
Почему у вас есть идентификатор объекта как обнуляемый. Интересно, вызывает ли это проблемы, поскольку это не имеет большого смысла с точки зрения целостности данных. –