Puede que el mapeo de contabilidad no este como embedded resource, o
que la extension no termine en ".hbm.xml"?

El 28/01/11, xhino <[email protected]> escribió:
> Que tal gente
>
> Si de nuevo yo el dummie xD
>
> traigo para ustedes dos consultas basicas por asi decirlo, estoy
> leyendo el cookbook de nhibernate 3, hice el ejercicio y todo salio a
> pedir de boca... pero extrañamente trato de hacerlo en mi ejemplo y
> salen errores tras errores
>
> El Error es el siguiente:
>
> No se controló NHibernate.MappingException
>   Message="Association references unmapped class:
> SAI.NH.BL.Contabilidad"
>   Source="NHibernate"
>   StackTrace:
>        en
> NHibernate.Cfg.XmlHbmBinding.CollectionBinder.BindCollectionSecondPass(XmlNode
> node, Collection model, IDictionary`2 persistentClasses, IDictionary`2
> inheritedMetas)
>        en
> NHibernate.Cfg.XmlHbmBinding.CollectionBinder.<>c__DisplayClassd.<AddCollectionSecondPass>b__c(IDictionary`2
> persistentClasses)
>        en NHibernate.Cfg.Configuration.SecondPassCompile()
>        en NHibernate.Cfg.Configuration.BuildSessionFactory()
>        en SystemSAI.Form1..ctor() en C:\Documents and Settings
> \augusto.ferriz\Mis documentos\Visual Studio 2008\Projects\SAI
> \SystemSAI\Form1.cs:línea 19
>        en SystemSAI.Program.Main() en C:\Documents and Settings
> \augusto.ferriz\Mis documentos\Visual Studio 2008\Projects\SAI
> \SystemSAI\Program.cs:línea 18
>        en System.AppDomain._nExecuteAssembly(Assembly assembly,
> String[] args)
>        en System.AppDomain.ExecuteAssembly(String assemblyFile,
> Evidence assemblySecurity, String[] args)
>        en
> Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
>        en System.Threading.ThreadHelper.ThreadStart_Context(Object
> state)
>        en System.Threading.ExecutionContext.Run(ExecutionContext
> executionContext, ContextCallback callback, Object state)
>        en System.Threading.ThreadHelper.ThreadStart()
>   InnerException:
>
>
> Para esto primero tengo una Clase Entidad, que maneja un ID tipo
> guid.comb
>
> public abstract class Entidad
>     {
>        public virtual Guid Id { get; protected set; }
>     }
>
> y luego tengo 2 clases Alumno y Contabilidad que heredan el ID de
> entidad:
>
> public class Alumno : Entidad
>     {
>         public virtual string Matricula {get; set; }
>         public virtual string Paterno {get; set; }
>         public virtual string Materno {get; set; }
>         public virtual string Nombre {get; set; }
>         public virtual IList<Contabilidad> Cuenta  {get; set; }
>     }
>
> Este es su mapeo:
>
> <class name="Alumno">
>     <id name="Id">
>       <generator class="guid.comb" />
>     </id>
>     <natural-id mutable="true">
>       <property name="Matricula" not-null="true" />
>     </natural-id>
>     <property name="Paterno" />
>     <property name="Materno" />
>     <property name="Nombre" />
>     <bag name="Cuenta" cascade="all-delete-orphan"> <--- segun el
> libro esto es lo unico que necesito hacer para que se haga
>       <key column="CuentaId" />
> la relacion entre las 2 clases... recuerden estoy usando NH3
>       <one-to-many class="Contabilidad"/>
>     </bag>
>   </class>
>
> public class Contabilidad : Entidad
>     {
>         public int NoCuenta {get; set; }
>         public int JDE {get; set; }
>         public int Hora {get; set; }
>         public int Importe {get; set; }
>     }
>
> Este es su mapeo:
>
> <class name="Contabilidad">
>     <id name="Id">
>       <generator class="guid.comb" />
>     </id>
>     <natural-id mutable="true">
>       <property name="NoCuenta" not-null="true" />
>     </natural-id>
>     <property name="JDE" />
>     <property name="Hora" />
>     <property name="Importe" />
>   </class>
>
>
> La segunda duda que tengo es que no quiero que mi archivo sea un
> cochinero de archivos clases y xml, trate de ponerlos en carpetas,
> pero por alguna extraña razon me dice que no puede cargar un objeto
> prque no cuenta con persistencia, curioso porque si los pongo todos
> juntos si funciona...
>
> Saludos
>
> P.D. Ya tome cafe y revise el notepad xD
>
> --
> Para escribir al Grupo, hágalo a esta dirección:
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano

-- 
Enviado desde mi dispositivo móvil

-- 
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano

Responder a