none
Vista de SQL en SQL muestra bien los datos pero en MVC3 no RRS feed

  • Pregunta

  • En SQL tengo esta vista:

    SELECT     dbo.tablaPersonal.rpe, dbo.tablaPersonal.id, dbo.tablaPersonal.nombres + ' ' + dbo.tablaPersonal.paterno + ' ' + dbo.tablaPersonal.materno AS nombreCompleto, 
                          dbo.tablaPersonalEmail.email
    FROM         dbo.tablaPersonal LEFT OUTER JOIN
                          dbo.tablaPersonalEmail ON dbo.tablaPersonal.id = dbo.tablaPersonalEmail.idPer


    y esta es una consulta sobre la vista:

    SELECT  [rpe]
          ,[id]
          ,[nombreCompleto]
          ,[email]
      FROM [SIP].[dbo].[vistaEmails]
      WHERE rpe = '12711'


    con esta salida:

    rpe id nombreCompleto email
    12711 11149 Carlos Eduardo Martínez Torres carlos.torres@uaslp.mx
    12711 11149 Carlos Eduardo Martínez Torres computronicslp@hotmail.com
    12711 11149 Carlos Eduardo Martínez Torres ltinfierno@gmail.com

    y en MVC3 tengo esta consulta a la misma vista:

    vistaM = db.vistaEmails.Where(w => w.rpe == "12711").ToList();

    con esta salida :

    RPE nombreCompleto email sugerir correo alterno
    12711 Carlos Eduardo Martínez Torres carlos.torres@uaslp.mx sugerir un correo alterno para esta persona
    12711 Carlos Eduardo Martínez Torres carlos.torres@uaslp.mx sugerir un correo alterno para esta persona
    12711 Carlos Eduardo Martínez Torres carlos.torres@uaslp.mx sugerir un correo alterno para esta persona

    como ven solo me muestra el primer correo guardado en la base de datos, alguien a tenido este problema, no es error de la vista ya que con un "break point" me aparece la misma información

    saludos y muchas gracias

    Carlos

    pd. tengo Visual 2010 y Sql 2008 usando MVC3, ya lo probe con MVC4 y hace lo mismo

    miércoles, 31 de octubre de 2012 19:18

Todas las respuestas

  • Tendríamos que ver el código que utiliza para leer los resultados de la consulta para determinar dónde estaría el problema.

    Jose R. MCP
    Code Samples

    miércoles, 31 de octubre de 2012 23:45
  • Disculpa la tardanza pero he tenido mucho trabajo, no se donde ver el código que se envia a SQL, pero lo resolvi haciendo la consulta directamente desde MVC solo así me dio los datos

    var consultaNombres = (from personas in db.tablaPersonal
                                                     join correos in db.tablaPersonalEmail on personas.id equals correos.idPer into personasCorreo
                                                     from pCorr in personasCorreo.DefaultIfEmpty()
                                                     select new
                                                     {
                                                         nombres = personas.nombres,
                                                         paterno = personas.paterno,
                                                         materno = personas.materno,                                             
                                                         rpe = personas.rpe,
                                                         id = personas.id,
                                                         correo = pCorr.email
                                                     }).Where(v => v.nombres.Contains(cad) || v.paterno.Contains(cad) || v.materno.Contains(cad)).ToList();

    muchisimas gracias, y seguimos buscando cual fue la falla, por ahora esta solución trabaja bien. 

    saludos Carlos

    jueves, 8 de noviembre de 2012 14:13