Inquiridor
Como retornar os checkboxes selecionados.

Pergunta
-
Galera, boa noite. Meu problema está em pegar o valor das checkboxes selecionadas, para que eu posa inserir no banco. O cenário é o seguinte: Tenho uma Tabela users, roles e userRoles, como a imagem abaixo:
Estou tentando implementar a página onde vou vincular a Role ou User, e estou populando o dropDownList de usuários com uma ModelView:
using System; using System.Collections.Generic; using System.Web; using System.Web.Mvc; using Sacer.Models; namespace Sacer.ViewModels { public class UserRoleModel { public SelectList users { get; set; } public int userID { get; set; } public List<Role> roles { get; set; } public int rolerID { get; set; } } }
E meu create está dessa forma:
public ActionResult Create() { UserRoleModel model = new UserRoleModel(); model.users = new SelectList(db.users, "Id", "Nome"); model.roles = db.roles.ToList(); return View(model); }
E por fim, minha view:
@model Sacer.ViewModels.UserRoleModel @{ ViewBag.Title = "Create"; } <h2>Create</h2> <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> @using (Html.BeginForm()) { @Html.ValidationSummary(true) <fieldset> <legend>UserRole</legend> @Html.DropDownListFor(x => x.userID, Model.users) @{ foreach (Sacer.Models.Role role in Model.roles) { <div> <input type="checkbox" value="@role.IdRoles" name="Roles" /> @role.Nome </div> } } <p> <input type="submit" value="Criar" onclick="GerarLista" /> </p> </fieldset> } <div> @Html.ActionLink("Voltar à lista", "Index") </div>
Como eu faço pra pegar os valores selecionados nos checkboxes???
Obrigado
Todas as Respostas
-
Tucão da uma olhada nesse tópico, é um problema parecido com a sua respectiva solução.
http://stackoverflow.com/questions/220020/how-to-handle-checkboxes-in-asp-net-mvc-forms
Boa sorte Tucão!!!
Se a resposta foi útil por favor qualifique! Janderson Candido de Mattos - MCTS
-
Kakashi963, Bom dia!!,
Já respondi um thread com essa dúvida. Verifica aqui:
http://social.msdn.microsoft.com/Forums/pt-BR/mvcpt/thread/1cd2472a-7ebc-4868-beb4-3603ce61a81b
-
Ae galera, obrigado pela ajuda. Mas não consigo de jeito algum.
Na minha ultima tentativa, minha Model View ficou:
namespace Sacer.ViewModels { public class UserRoleModel { public SelectList users { get; set; } public int userID { get; set; } public List<Role> roles { get; set; } public int rolerID { get; set; } public bool rolerSelecionada { get; set; } } }
Não entra na minha cabeça a forma de fazer isso.