ASP.NET MVC 2: Какой тип данных свойства Model будет автоматически связывать выбор HTML (DDL) с несколькими вариантами выбора? - PullRequest
0 голосов
/ 28 июля 2010

У клиента есть свойство Model, для которого требуется список выбранных параметров через запятую.Мы представляем их список выбора (DDL) в виде раскрывающегося списка с несколькими вариантами выбора.

Как бы выглядел тип данных свойства, который автоматически связывал бы множественный выбор в HTML-выделении (DDL) на стороне клиента?

Select публикует данные следующим образом:

myOptions=Volvo&myOptions=Mercedes&myOptions=Audi

И мы хотим автоматически привязать их к некоторому свойству:

IList<string> CarChoices {get;set;}

Таким образом, параметр метода действия POST будет (Carform myForm), чтобудет иметь myForm.CarChoices, который включает в себя список из трех выбранных автомобилей?

Ответы [ 2 ]

1 голос
/ 07 марта 2011

Возможно, я неправильно понимаю, чего вы пытаетесь достичь, но я думаю, что этот пост от Фила Хаака описывает, как делать то, что вы пытаетесь сделать чистым способом: http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx

1 голос
/ 28 июля 2010

Иногда легче запачкать руки и работать с HTML.Я предлагаю сделать что-то вроде этого:

<select multiple>
   <% foreach(var item in Model){ %>
      <option value="<%= item.ID %>"><%= item.Description %></option>
   <% } %>
</select>

очевидно, ваша модель - это ваша коллекция.Вы также можете использовать объект ViewData ["Anything"] для передачи данных, по вашему выбору.

...