insert y select con linq
-
sábado, 11 de febrero de 2012 17:26
Saludos, solicitando su ayuda por favor. Necesito hacer un insert con linq a una base de datos y los campos a insertar provienen de una una sentencia select. Algo así;
Insert into Trayectos (trayecto,id_ruta) Select Ruta, id_ruta From ruta INNER JOIN viajes On ruta.id_viaje=viajes.id_viaje WHERE viajes.id_viaje=15
Todas las respuestas
-
sábado, 11 de febrero de 2012 19:00Moderador
pero es linq to sql lo que usas, o es entity framework ?
ademas si usas linq sql para que has realizado un INSERT si este lo ahce por ti para crear la persistncia a la base de datos
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina -
martes, 14 de febrero de 2012 18:35
Ay si ya no entendi, dejame platicarte lo que estoy haciendo. En mi proyecto agrege un archivo linq to Sql classes llamado DataClasses1.dbml, y en mi codigo hago lo siguiente
1.- Dim db As New DataClasses1DataContext()
Dim nueva_orden = New Ordene With {.id_status = 1, .ano = anoActual, .consecutivo = consecutivo}db.Ordenes.InsertOnSubmit(nueva_orden)
db.SubmitChanges()
2.- Pero el campo consecutivo debe debe ser el resultado de un consulta a la tabla viajes el cual contiene el siguiente numero ha asignar el la tabla Orden.
Algo como Select Max(consecutivo) From viajes
Lo que no se hacer es el punto numero 2 con linq, la sentencia que me devolveria el consecutivo de la otra tabla.
-
jueves, 16 de febrero de 2012 9:56
Hola omarifr,
Una posible solución sería que antes de guardar los cambios realizaras esta consulta para obtener el valos máximo y luego lo asignaras a la propiedad consecutivo.
Algo del siguiente estilo:
var consecutivo = (from viaje in db.Viajes select viaje.Id) .Max();Saludos,
JA Reyes.
Please remember to Vote & "Mark As Answer" if this post is helpful to you.
Por favor, recuerda Votar y "Marcar como respuesta" si la solución de esta pregunta te ha sido útil.- Propuesto como respuesta Pedro J Marquez jueves, 16 de febrero de 2012 13:18
- Marcado como respuesta omarifr jueves, 16 de febrero de 2012 17:51
-
jueves, 16 de febrero de 2012 17:51Ah q sencillo, muchas gracias.

