2010-08-06 3 views
14

Я ищу решения/предложения по отправке строки []. Моя модель (программа) определяет целевое свойство (Уровни) как строку. Я могу добиться этого, просто используя FormCollection, но предпочел бы передать эту строку [] прямо в модель из сообщения. Вот отрывки:Публикация массива в форме mvc

ProgramConotroller/Создать

// 
// POST: /Program/Create 
[HttpPost] 
public ActionResult Create(Program obj) 
{ 
    if(_service.CreateProgram(obj)) 
    { 
     return RedirectToAction("Index"); 
    } 
    // Add data to view data, remove if not necessary 
    AddToViewData(obj); 
    return View("Create", obj); 
} 

Вид/Создать

... 
<p> 
<label>Program Levels</label> 
<%= Html.ValidationMessageFor(model => model.Levels) %> <br /> 
<% foreach (Level level in (IEnumerable)ViewData["ProgramLevels"]) { %> 
<input type="checkbox" name="Levels" value="<%= level.Id %>" <%= CommonExtensions.isChecked(level.Id.ToString(), Model.Levels) %> /><%= level.Name %><br /> 
<% } %> 
</p> 
... 

ответ

25

Читайте о Model Binding to Arrays.

+1

Я должен был знать, чтобы проверить блог Скотта до публикации ... глупо меня глупо. – gnome

Смежные вопросы