Вы не можете изменить значение флажка; флажки всегда публикуются с «on» в качестве значений, если установлен этот флажок, и MVC может использовать это для автоматического сопоставления опубликованных значений с логическими значениями Однако, если этот список имен является динамическим, а каждое имя уникальным, вы можете сгенерировать форму с помощью флажков с динамическими именами. Затем в контроллере вы можете просмотреть необработанную форму, чтобы увидеть, какие имена были проверены. Например, в представлении ваш код может выглядеть примерно так:
<form>
<% /* Some loop here */ { %>
<input type="checkbox" name="name_<%= Html.Encode(theName) %>" />
<label><%= Html.Encode(theName) %></label>
<% } %>
</form>
Затем в контроллере:
foreach (string name in listOfAvailableNames)
{
if (Request.Form["name_" + name] == "on")
{
// Handle the name being selected
}
else
{
// Handle the name not being selected
}
}