Bom dia pessoal, Consigo concluir um cadastro usando DropDown list qd o valor selecionado e unico. Porem nao sei como fazer isso para multiplos valores selecionados em um ListBox. Ele ate salva no banco, mas apenas com o primeiro item selecionado. Como faço para passar multiplos valores para o Controller e como ler e registrar esses valores separadamente depois ?
Agradeço se alguem tiver algum exemplo com isso.
Codigo da View:
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12">Equipamento teste: <span class="required"></span></label>
<div class="col-md-6 col-sm-6 col-xs-12">
@Html.ListBoxFor(model => model.Equipamento, new RELATORIO.Models.UtilCombobox().Equipamento(), new { @class = "form-control", required = "required", size = 5 })
</div>
</div>
Codigo da camada Controller:
[HttpPost]
[Authorize]
public ViewResult ParametrizacaoProdutividadeEquipamento(ParametrizacaoProdutividadeEquipamentoForm ppe)
{
if (ModelState.IsValid
&& (ppe.Equipamento != null || ppe.Equipamento != "")
&& (ppe.Produto != null || ppe.Produto != "")
&& (ppe.DataVigenciaInicio != null)
&& (ppe.DataVigenciaFim != null)
&& (ppe.PecasMinuto != null)
&& (ppe.Multiplicador != null)
&& (ppe.ObjetivoDesempenho != null)
&& (ppe.ObjetivoDisponibilidade != null)
&& (ppe.ObjetivoOEE != null)
&& (ppe.ObjetivoQualidade != null)
&& (ppe.QuantidadeOperadorMinimo != null)
&& (ppe.QuantidadeOperadorMaximo != null)
&& new Cadastro().cadastroPPE(ppe.Equipamento, ppe.Produto, ppe.DataVigenciaInicio, ppe.DataVigenciaFim, ppe.PecasMinuto, ppe.Multiplicador, ppe.ObjetivoOEE, ppe.ObjetivoDisponibilidade, ppe.ObjetivoDesempenho, ppe.ObjetivoQualidade, ppe.QuantidadeOperadorMinimo, ppe.QuantidadeOperadorMaximo)
)
Chamada para salvar CadastroPPE:
public bool cadastroPPE(string Equipamento, string Produto, DateTime DataVigenciaInicio, DateTime DataVigenciaFim, int PecasMinuto, int Multiplicador, decimal ObjetivoOEE, decimal ObjetivoDisponibilidade, decimal ObjetivoDesempenho, decimal ObjetivoQualidade, int QuantidadeOperadorMinimo, int QuantidadeOperadorMaximo)
{
try
{
//int ultimoId = (int)(from it in bd.tbl_PPE_ParametrizacaoProdutividadeEquipamento select it.ppe_ID).Max();
int eqpID = Convert.ToInt32((from it in bd.tbl_EQP_Equipamento where it.eqp_Descricao == Equipamento select it.eqp_ID).First());
int iprID = Convert.ToInt32((from it in bd.tbl_IPR_ImportacaoProduto where it.ipr_Codigo == Produto select it.ipr_ID).First());
using (bd)
{
BancoDeDados.tbl_PPE_ParametrizacaoProdutividadeEquipamento novoTipo = new BancoDeDados.tbl_PPE_ParametrizacaoProdutividadeEquipamento();
// novoTipo.ppe_ID = ultimoId + 1;
novoTipo.eqp_ID = eqpID;
novoTipo.ipr_ID = iprID;
novoTipo.ppe_DataVigenciaInicio = DataVigenciaInicio;
novoTipo.ppe_DataVigenciaFim = DataVigenciaFim;
novoTipo.ppe_PecasMinuto = PecasMinuto;
novoTipo.ppe_Multiplicador = Multiplicador;
novoTipo.ppe_ObjetivoOEE = ObjetivoOEE;
novoTipo.ppe_ObjetivoDisponibilidade = ObjetivoDisponibilidade;
novoTipo.ppe_ObjetivoDesempenho = ObjetivoDesempenho;
novoTipo.ppe_ObjetivoQualidade = ObjetivoQualidade;
novoTipo.ppe_QuantidadeOperadorMinimo = QuantidadeOperadorMinimo;
novoTipo.ppe_QuantidadeOperadorMaximo = QuantidadeOperadorMaximo;
novoTipo.ppe_Excluido = false;
bd.tbl_PPE_ParametrizacaoProdutividadeEquipamento.InsertOnSubmit(novoTipo);
bd.SubmitChanges();
}
return true;
}
catch (Exception e)
{
return false;
}
}
Obrigado.