none
Item model se repite 4 veces despues del filtro RRS feed

  • Pregunta

  • Hola como va ?. Despues de hacer una busqueda filtrada hago  @foreach (var item in Model) para cargar los datos obtenidos, pero me los devuelve repetido 4 veces intente controlarlo con un if count pero igual aparece cuatro veces. desde ya gracias
    sábado, 18 de mayo de 2019 0:00

Respuestas

  • Hola EnzoTuc40:

    No se a priori, como no pones nada de código, parece bastante difícil, que el foreach realice un bucle repetido 4 veces.

    No será que tú consulta, para cargar el model filtrado, devuelve cuatro veces los registros repetidos.

    Pon un punto de interrupción, en tú controller, justo antes de retornar a la vista y observa si no estarás devolviendo los registros 4 veces. Estas situaciones, se suelen dar, cuando o se realiza una agrupación por un campo que esperamos que agrupe, pero no lo vemos, o cuando hacemos una consulta a datos, que o no estan normalizados, o no planteamos correctamente.

    Yo te diría que repases el conjunto de datos haber lo que esta ocurriendo.

    Depurar con VS

    https://docs.microsoft.com/es-es/visualstudio/debugger/debugger-feature-tour?view=vs-2019

    Espero te ayude.

    • Marcado como respuesta EnzoTuc40 domingo, 19 de mayo de 2019 22:29
    sábado, 18 de mayo de 2019 5:17
  • Hola. puedes mostrarnos el código que realiza la consulta a tu BBDD? Según indicas el problema radica en el acceso a datos que traes registros duplicados. Estás usando procesimientos almacenados ? Si es así, revisa la query para ver si estás haciendo algun Join mal formado.

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    • Marcado como respuesta EnzoTuc40 domingo, 19 de mayo de 2019 22:29
    domingo, 19 de mayo de 2019 20:23
    Moderador

Todas las respuestas

  • Hola EnzoTuc40:

    No se a priori, como no pones nada de código, parece bastante difícil, que el foreach realice un bucle repetido 4 veces.

    No será que tú consulta, para cargar el model filtrado, devuelve cuatro veces los registros repetidos.

    Pon un punto de interrupción, en tú controller, justo antes de retornar a la vista y observa si no estarás devolviendo los registros 4 veces. Estas situaciones, se suelen dar, cuando o se realiza una agrupación por un campo que esperamos que agrupe, pero no lo vemos, o cuando hacemos una consulta a datos, que o no estan normalizados, o no planteamos correctamente.

    Yo te diría que repases el conjunto de datos haber lo que esta ocurriendo.

    Depurar con VS

    https://docs.microsoft.com/es-es/visualstudio/debugger/debugger-feature-tour?view=vs-2019

    Espero te ayude.

    • Marcado como respuesta EnzoTuc40 domingo, 19 de mayo de 2019 22:29
    sábado, 18 de mayo de 2019 5:17
  • Hola Javier gracias por tu respuesta, de hecho puse un punto de interrupción y el modelo ya vine repetido cualquier registro que busco 4 veces se repite revise el codigo y no encuentro el porque el codigo es una prueba que realizo de microsoft docs el proyecto movie tal  como lo explican ahi. no se si debera a visual studio 2019 porque experimente otros problemas raros hare la prueba en vs 2017 asi me saco las dudas cualquier cosa.
    sábado, 18 de mayo de 2019 22:34
  • Hola. puedes mostrarnos el código que realiza la consulta a tu BBDD? Según indicas el problema radica en el acceso a datos que traes registros duplicados. Estás usando procesimientos almacenados ? Si es así, revisa la query para ver si estás haciendo algun Join mal formado.

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    • Marcado como respuesta EnzoTuc40 domingo, 19 de mayo de 2019 22:29
    domingo, 19 de mayo de 2019 20:23
    Moderador
  • Hola antes que nada gracias a todos. No se a que se debia el error pero se soluciono el codigo del controller es este

     
            public async Task<IActionResult> Index(int buscarDNI)
            {
                var padron2019 = from m in _context.Padron2019
                                 where m.Dni == buscarDNI
                                 select m;
    
    
    
    
                return View(await padron2019.ToListAsync());
               
            }

    y en la vista hacia el control para evitar el error por null y luego si hacia el foreach.

    Ahora desconozco porque se daba el error pero se soluciono

    domingo, 19 de mayo de 2019 22:28