Pregunta

¿Cuál es la mejor manera de manejar esto:

class Option {
    int id;
    string name;
}

class QuoteItem
{
     IList<Option> options;
}

class QuoteViewModel {
     IList<Option> allOptions;
     QuoteItem quoteItem;
}

Básicamente, tengo todas las opciones disponibles en allOptions.Quiero tener una casilla que pone a otro Option (incluso si es sólo su id) en el QuoteItem.options lista cuando está seleccionada.¿Cómo puedo lograr esto?Sería mejor ser un IList<bool> y se unen después del hecho?

¿Fue útil?

Solución

Te sugiero que te tomes mira este entrada de blog de Phil Haack acerca del modelo de la unión a una lista

Por su situación, usted puede utilizar el modelo simple de la unión a un IEnumerable<int> options, donde los valores serán la identificación de las opciones seleccionadas.

su entrada vista se verá algo como esto:

<form method="post" action="/QuoteItems/SetOptions">
        <input type="hidden" name="options" value="1" />
        <input type="hidden" name="options" value="4" />
        <input type="hidden" name="options" value="2" />
        <input type="hidden" name="options" value="8" />
        <input type="submit" />
    </form>

El oculto entradas contienen seleccionado optionId s, el nombre de la nota atributo que es el mismo para cada entrada ocultos.El modelo predeterminado cuaderno puede obligar a este a una lista de enteros.

La cosa que usted necesita hacer es agregar / eliminar un oculto opciones de entrada en el lado del cliente, dependiendo de si se selecciona un elemento en su de "todas las opciones", seleccione control.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top