none
Consulta Razor @Html.DropDownListFor RRS feed

  • Pregunta

  • Buenas, consulto sobre un tema que hace un par de días vengo investigando y no puedo solucionar. Comienzo dando información sobre el contexto para que puedan entender:

    Objetivo de la consulta: seleccionar mediante el DropDownListFor un valor y mandarlo al controlador. (Me lo manda NULL)

    • Definición de Modelo:

    Notese que los 3 primeros atributos son de tipo: SistemaEntidad (Id int, Descripcion string) y TipoTraduccionEntidad (Id int, Descripcion String).

    • Controller:

    Notese que ObtenerTipoTraducción(null) me devuelve todos los tipos cargados de traducción.

    Notese que ObtenerSistema(null) me devuelve todos los sistemas cargados.

    En ambos casos a través del Viewbag mando a la vista lo obtenido para llenar el @Html.DropDownListFor

    • Controller POST:

    En el POST este se ve que le llega el modelo pero llega null cuando selecciono en el DropDownListFor de la vista.

    Notese que la Clase SistemaEntidad() la creo para asignarsela a traduccion.modulosecundario que es de tipo SistemaEntidad, al igual que moduloPrimario. Lo mismo sucede con tipoTraduccionEntidad()

    • Vista

    Aquí estan los DropDownListFor, que me muestra bien las opciones a la hora de cargar el formulario. Pero cuando selecciono el valor no me lo manda al controllador. 

    PREGUNTAS:

    1. Me podrían decir que van en los parámetros del DropDownListFor para poder entenderlo? DropDownListFor(param1, param2, param3)
    2. El problema se da porque al seleccionar en el DropDownListFor es un string ni un int, sino que es de TipoTraduccionEntidad o SistemaEntidad.

    ACLARACIÓN: es la única forma que encontré de implementación para asignar a una TRADUCCION el Tipo de Traducción.

    ESPERO QUE SE HAYA ENTENDIDO.

    De todos modos se que es complejo explicarlo por este medio. 

    Sin más agradezco por la ayuda.

    Ss.

    Rodrigo.

    martes, 21 de marzo de 2017 19:53

Todas las respuestas

  • hola

    Pero te esta seleccionando la opcion del combo ? porque deberias usar

    @Html.DropDownListFor(g=> g.tipoTipoTraduccion.idTraduccion, ...)
    de esta forma seleccionara un dato simple como value del combo, no funciona con entidades

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 21 de marzo de 2017 20:16