Has probado declarar como virtual tus propiedades, tal cual te lo
sugiere el mensaje de error ?

El día 9 de junio de 2010 07:03, Eddie <[email protected]> escribió:
> Obtengo el siguiente error al iniciar la aplicación.
>
> "
> Error creating context 'spring.root': The following types may not be
> used as proxies:
> Domain.Medico: method get_Matricula should be 'public/protected
> virtual' or 'protected internal virtual'
> Domain.Medico: method set_Matricula should be 'public/protected
> virtual' or 'protected internal virtual'
> .
> .
> .
> "
>
> La situacion es la siguiente: tengo dos clases Persona y Medico.
>
>    public class Persona : Entity
>    {
>        private string _nombre;
>        private DateTime _fechaNacimiento;
>        public string Nombre
>        {
>            get { return _nombre; }
>            set { _nombre = value; }
>        }
>        public DateTime FechaNacimiento
>        {
>            get { return _fechaNacimiento; }
>            set { _fechaNacimiento = value; }
>        }
>    }
>
>    public class Medico : Persona
>    {
>        private string _matricula;
>        public string Matricula
>        {
>            get { return _matricula; }
>            set { _matricula = value; }
>        }
>    }
>
>
> El archivo de mapeo de NHibernate es el siguiente.
>
> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
>  <class name="Domain.Persona, Domain" table="Personas" lazy="false" >
>    <id name="ID" type="Int32" unsaved-value="0">
>      <column name="Id" sql-type="int" not-null="true" unique="true"
> index="PK_Personas"/>
>      <generator class="native" />
>    </id>
>    <property name="Nombre" type="String">
>      <column name="nombre" length="50" sql-type="varchar" not-
> null="true" />
>    </property>
>    <property name="FechaNacimiento" type="DateTime">
>      <column name="fechanac" sql-type="datetime" />
>    </property>
>
>    <joined-subclass name="Domain.Medico, Domain"
> table="Profesionales" >
>      <key column="id_persona"/>
>      <property name="Matricula" column="matricula" type="String" />
>    </joined-subclass>
>
>  </class>
> </hibernate-mapping>
>
>
> Si elimino el tag <joined-subclass> todo anda bien y puedo manejar
> Persona normalmente.
> Como deberia agregar la definicion de la clase Medico??
>
> Gracias
>
> --
> Para escribir al Grupo, hágalo a esta dirección: 
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano

-- 
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