none
Insercón master-detail RRS feed

  • Pregunta

  • Hola

    Tengo una base de datos MySql en la que tengo una tabla de orders y otra de orders detail.

    la tabla de orders tiene una primary key puesta como autoincrment, y la tabla detalles esta relacionada por ese id.

    el problema que tengo es que me da un error al insertar simultáneamente en la tabla de orders y detalles

    mi código es algo así:

    Orders order = new Orders();
    Detail detail = new Detail();
    Detail.Order = order;
    entidades.Orders.Add(order);
    entidades.Details.add(Detail);
    entidades.savechanges();

    también he probado con:

    Orders order = new Orders();
    Detail detail = new Detail();
    order.Details.Add(detail);
    entidades.Orders.Add(order);
    entidades.savechanges();

    Pero me da error

    la única forma en que me funciona es:

    Orders order = new Orders();
    Detail detail = new Detail();
    entidades.Orders.Add(order);
    entidades.savechanges();
    Detail.Order = order;
    entidades.Details.add(Detail);
    entidades.savechanges();

    pero creo que no es correcto hacer dos savechanges

    Cuál es la forma correcta de hacerlo?

    Gracias

    domingo, 19 de enero de 2014 12:17

Todas las respuestas

  • >>Pero me da error

    cual es el mensaje de error que recibes ? cuando lo realizas con la segunda opcion que has comentado


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    domingo, 19 de enero de 2014 20:12
  • El error es el mismo en los dos primeros casos:

    El valor especificado no es una instancia de un tipo de constante válido.
    Nombre del parámetro: value

    Parece  como si estuviera mal un campo pero ninguna tabla tiene ningún campo "value" y ´la inicialización de los campos el la misma que cuando me inserta bien.

    gracias

    lunes, 20 de enero de 2014 12:01