Thank you very much. Already understood

On 20 oct, 15:06, Nicholas Kilian <[email protected]>
wrote:
> Sí,
>
> Si usted rompe el sis.Delete e inspeccionar los dos objetos, podrás ver:
>
> sis de objetos con una lista Suscriptor cero contar, no tiene conocimiento de 
> sulos niños en la memoria de la forma en que los haya creado - por lo que 
> cuando la eliminaciónocurre que no caerá en cascada para el niño.
>
> Pruebe
>
>             sis Asistema = new Asistema ();            SUS Suscriptor = 
> Suscriptor () nuevo;           Sis.Suscriptor.Add (SUS);            
> sis.Create (); / / Esta cascada va a la pieza de enganche para el niño.
>
>             sis.Delete (); / / Esta cascada se la Eliminar para el niño 
> ahora,como el SIS objeto es consciente de que tiene un hijo.
>
> SaludosNick
>
>
>
>
>
>
>
> ----- Mensaje original -----De: [email protected]
>
> [Mailto: [email protected]] En nombre de oreoEnviado el: 
> 20 de octubre 2010 14:56Para: Castillo de los usuarios del proyectoAsunto: 
> Re: error de eliminar en cascada
>
> [ActiveRecord]    clase Asistema: ActiveRecordBase <Asistema>    {        
> Identificación int privado;        privado IList <Suscriptor> suscriptores = 
> <Suscriptor> nueva Lista ();
>
>         Asistema pública ()        {        }
>
>         [PrimaryKey]        Identificación del público int virtuales        
> {            Identificación get {return;}            conjunto {id = valor;}   
>      }
>
>         [HasMany (inversa = cascada cierto, 
> =ManyRelationCascadeEnum.AllDeleteOrphan)]        pública virtual IList 
> <Suscriptor> Suscriptores        {            {conseguir suscriptores 
> return;}            conjunto {suscriptores = valor;}        }    }
>
>     [ActiveRecord]    clase Suscriptor: ActiveRecordBase <Suscriptor>
>     {
>         private int id;
>         private Asistema asistema;
>
>         public Suscriptor()
>         {
>         }
>
>         public Suscriptor(Asistema asistema)
>         {
>             this.asistema = asistema;
>         }
>
>         [PrimaryKey]
>         public virtual int Id
>         {
>             get { return id; }
>             set { id = value; }
>         }
>
>         [BelongsTo("asistemaid")]
>         public virtual Asistema Asistema
>         {
>             get { return asistema; }
>             set { asistema = value; }
>         }
>
>     }
>
>     class Program
>     {
>         static void Main(string[] args)
>         {
>             IConfigurationSource config =
> ActiveRecordSectionHandler.Instance;
>             ActiveRecordStarter.Initialize(config,
> typeof(Suscriptor),typeof(Asistema));
>             ActiveRecordStarter.CreateSchema();
>
>             Asistema sis = new Asistema();
>             sis.Create();
>             Suscriptor sus = new Suscriptor(sis);
>             sus.Create();
>
>             sis.Delete();//Error
>
>         }
>     }
>
> DELETE statement conflicted with the REFERENCE constraint
> "FK58D3BC2B7EE8DAF." The conflict has appeared in the database "NHibernate"
> "NHibernate", table "dbo.Suscriptor", column 'asistemaid'. Statement has
> been terminated.
>
> If you do not call the delete method, the schema is created perfectly, as
> well as all tables
>
> On 20 oct, 14:44, Nicholas Kilian <[email protected]>
> wrote:
> > Bueno, pero ¿cuál sería?¿Cuál es la estructura real de la tabla?
>
> > Definitivamente hay una columna en la tabla id_sistema Suscriptor que es
> un extranjeroclave para algo, las instrucciones CREATE para las tablas nos
> ayudará un pocomás.
>
> > ----- Mensaje original -----De: [email protected]
>
> > [Mailto: [email protected]] En nombre de
> > oreoEnviado el: 20 de octubre 2010 14:41Para: Castillo de los usuarios
> > del proyectoAsunto: Re: error de eliminar en cascada
>
> > pizca
>
> > [Pertenece a ("id_sistema")]        pública virtual Sistema Sistema       
>
> > {            Sistema get {return;}            conjunto {Sistema =
> > valor;}        }el error es el mismo
>
> > El 20 de oct, 14:34, Nicolás Kilian <nicholaskil...@
> googlemail.com>escribió:> El nombre de la columna que usó en su asignación,
> y le devolvió el nombre de la columna> El error no son lo mismo ...
>
> > 'Id_sistema' columna> vs [Pertenece a ("Id_Sistema")]
>
> > > ----- Mensaje original -----> De:
> > > [email protected]
>
> > > [Mailto: [email protected]] En nombre de oreo>
> > > Enviado el: 20 de octubre 2010 14:28> Para: Castillo de los usuarios
> > > del proyecto> Asunto: error de eliminar en cascada: Re
>
> > > En20Record.Mappings.ashxsays%http://stw.castleproject.org/Active:
>
> > > Si es necesario eliminar objetos secundarios al eliminar uno de los
> padres (por ejemplo, cuandoBlog.Delete> llamando al () también debe eliminar
> todos los registros relacionados de Correos de> La base de datos), puede
> especificar inversa = true.
>
> > > También probé sin inversa y no funciona
>
> > > El 20 de oct, 14:17, Nicolás Kilian nicholaskil <...googlemail.com> @>
> Escribió:>> ¿Por qué se establece inversa = True en público virtual
> <Suscriptor> IList>> Suscriptores?
>
> > >> ----- Mensaje original ----->> De:
> > >> [email protected]
>
> > >> [Mailto: [email protected]] En nombre de oreo>>
> > >> Enviado el: 20 de octubre 2010 13:45>> Para: Los usuarios Castillo
> > >> de Proyecto>> Asunto: error de eliminar en cascada: Re
>
> > >> Quiero eliminar un padre, y por lo tanto todos sus hijos.
>
> > >> El 20 de oct, 13:35 Patrick Steele <patrick.ste...gmail.com> @
> escribió:>>> Si desea que el padre (y todos los niños) borró cuando una
> sola>> Infantil> se elimina, simplemente llame a su eliminación en los
> padres (en lugar de>>> Llamando eliminar en el niño):
>
> > >>> Child.Sistema.Delete ();
>
> > >>> --->>> Patricia Steelehttp://weblogs.asp.net/psteele
>
> > >>> On Wed, Oct 20, 2010 a las 6:59, oreo <jesu.drui...@ gmail.com>
> escribió:>>>> Hola.Lo siento por mi Inglés.>>>> Tengo un uno a muchos, y
> quiero eliminar a los padres cuando la>>> Infantil> se elimina.
>
> > >>>> Cuando intento eliminar un padre sale el siguiente error:
>
> > >>>> DELETE en conflicto con la restricción REFERENCIA>>>>
> "FK58D3BC2BC5838F81".El conflicto ha aparecido en la base de datos>>>>
> "NHibernate" mesa "dbo.Suscriptor", "id_sistema 'columna.>>>> Ha finalizado
> la instrucción.
>
> > >>>> [ActiveRecord]>>>> Sistema de clase: ActiveRecordBase
> > >>>> <Sistema>>>>> {>>>> Private int id;
>
> > >>>> Privada IList <Suscriptor> suscriptores = new>>>> <Suscriptor>
> > >>>> Lista ();
>
> > >>>> Sistema pública ()>>>> {>>>>}
>
> > >>>> [PrimaryKey ("Id_Sistema")]>>>> Public int Id virtuales>>>> {>>>>
> > >>>> Get {return id;}>>>> Set {id = valor;}>>>>}
>
> > >>>> [HasMany (Cascade =>>>>
> > >>>> ManyRelationCascadeEnum.AllDeleteOrphan,>>>> Invertir =
> > >>>> true)]>>>> Público virtual IList <Suscriptor> Suscriptores>>>>
> > >>>> {>>>> Obtener suscriptores {return;}>>>> Conjunto {valor =
> > >>>> suscriptores;}>>>>}>>>>}
>
> > >>>> [ActiveRecord]>>>> Clase Suscriptor: ActiveRecordBase
> > >>>> <Suscriptor>>>>> {>>>> Private int id;>>>> Sistema Sistema
> > >>>> privado;
>
> > >>>> Públicas Suscriptor ()>>>> {>>>>}
>
> > >>>> [PrimaryKey]>>>> Public int Id virtuales>>>> {>>>> Get {return
> > >>>> id;}>>>> Set {id = valor;}>>>>}
>
> > >>>> [Pertenece a ("Id_Sistema")]>>>> Público virtual Sistema
> > >>>> Sistema>>>> {>>>> Sistema get {return;}>>>> Conjunto {Sistema =
> > >>>> valor;}>>>>}>>>>}
>
> > >>>> Gracias
>
> > >>>> ->>>> Has recibido este mensaje porque estás suscrito a la>>>>
> Google>> Grupos "Castillo de los usuarios del proyecto" del grupo.>>>> Para
> publicar en este grupo, envía un correo electrónico a>>
> [email protected].>>>> Para anular la suscripción a este
> grupo, envía un correo electrónico a>> Castillo-proyecto-es +
> [email protected].>>>> Para obtener más opciones, visita este
> grupo>> Enhttp://groups.google.com/group/castle-project-users?hl=en.
>
> > >> ->> Has recibido este mensaje porque estás suscrito a Google>> Grupos
> "Castillo de los usuarios del proyecto" del grupo.>> Para publicar en este
> grupo, envía un correo electrónico a>
> [email protected].>> Para anular la suscripción a este
> grupo, envía un correo electrónico a>> Castillo-proyecto-es +
> [email protected].>> Para obtener más opciones, visita este
> grupo> Enhttp://groups.google.com/group/castle-project-users?hl=en.
>
> > > -> Has recibido este mensaje porque estás suscrito a Google> Grupos de
> "Castillo de los usuarios del proyecto" del grupo.> Si quieres publicar en
> este grupo, envía un correo electrónico
> [email protected].> Para anular la suscripción a este
> grupo, envía un correo electrónico a> Castillo-proyecto-es +
> [email protected].> Para obtener más opciones, visita este
> grupoenhttp://groups.google.com/group/castle-project-users?hl=en.
>
> > -Has recibido este mensaje porque estás suscrito a los Grupos de
> Google"Castillo de los usuarios del proyecto" del grupo.Para publicar en
> este grupo, envía un correo electrónico a
> [email protected] anular la suscripción a este
> grupo, envía un correo electrónico acastillo-proyecto-es +
> [email protected] obtener más opciones, visita este grupo
> enhttp://groups.google.com/group/castle-project-users?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Castle Project Users" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group 
> athttp://groups.google.com/group/castle-project-users?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"Castle Project Users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/castle-project-users?hl=en.

Reply via email to