Bom dia galera é o seguinte, crio um conjunto de checkboxes com uma lista vindo do banco. seto os valores selecionados em um vetor com javascript, este vetor é um vetor de objetos contendo o id do checkbox e o nível de conhecimento selecionado. como envio
este vetor através do post para meu controlador Asp.Net?
Códigos:
Modelo:
public partial class HORARIOS
{
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
public HORARIOS()
{
PROGRAMADORES = new HashSet<PROGRAMADORES>();
}
[Key]
public int ID_HR { get; set; }
public int NIVEL_CONHECIMENTO { get; set; }
[Required]
[StringLength(200)]
public string DESC_HR { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<PROGRAMADORES> PROGRAMADORES { get; set; }
}
View:
{{HorariosSelecionados}}
<h3>What's the best time to work for you? / Pra você qual é o melhor horário para trabalhar? *</h3>
<div ng-repeat="item in ListHorarios">
<input class="col-md-1" id="{{item.ID_HR}}" type="checkbox"ng-model="HorariosSelecionados" name="HorariosSelecionados"
value="{{item.ID_HR}}" ng-checked="selection.indexOf(item.ID_HR) > -1" ng-click="toggleSelection(item)" />
<label class="col-md-11">{{item.DESC_HR}}</label>
</div>
Controller angular:
Função que add os itens checados no vetor
$scope.toggleSelection = function toggleSelection(item) {
var idx = $scope.HorariosSelecionados.indexOf(item.ID_HR);
// is currently selected
if (idx > -1) {
$scope.HorariosSelecionados.splice(idx, 1);
}
// is newly selected
else {
$scope.HorariosSelecionados.push(item);
}
};
Precisava no caso, após submeter o formulário, receber no controller este vetor e conseguir acessar os atributos da classe HORARIO. Algo do tipo
[Httpost]
public ActionResult GetCheck(List<Horarios> ListaDeHorarios)
{
//ações....
}