0
Good morning, everyone.
I’m new to Asp.Net and I took a personal project to do, but I’m having trouble passing parameters to the controller. I don’t know how to pass more than one parameter at a time. I have a modal to change the type of hospital bed accommodation. I need to pass to the controller the code of the bed and the code of the new type of accommodation, but I couldn’t do it at all. I’m googling here and there for brothers 4 days =/
The code of the bed is on bed.CdLeito.Tostring()
And the accommodation type code is on hm.Gettipoacomodacao(). Rows[i][0]. Tostring() and is in an input group
Obs: I tried for Get and Post, I couldn’t get any. The formaction of the save button calls the controller, but does not send the codes
Obs2: Sorry if the code is outside of the programming standards, is that I really started now in Asp.Net. I only know basic C# .
Obs3: I’m open to any suggestions for improvement in the code.
Follow the codes
HTML
@foreach (var unidade in hm.GetAllUnidInt())
{
<!-- ESSE FOREACH LISTA TODAS AS UNIDADES DE INTERNAÇÃO -->
foreach (var leito in hm.GetLeitosAtivos())
{
<!-- ESSE FOREACH CARREGA TODOS OS LEITOS ATIVOS-->
if (unidade.DescricaoUnidade.ToString() == leito.DsUnidInt.ToString())
{
<!-- ESSE IF É PARA MOSTRAR O LEITO DA RESPECTIVA UNIDADE DE INTERNAÇÃO -->
if (@leito.StatusLeito.ToString() == "OCUPADO")
{
<!--DIV Leito Ocupado - transparente-->
<!--AQUI TEM UM CARD COM UM BUTTON QUE CHAMA O MODAL CASO A CONDIÇÃO SEJA A DO IF-->
}
else if (@leito.StatusLeito.ToString() == "VAGO")
{
<!--DIV Leito Vago - Verde-->
<!--AQUI TEM UM CARD COM UM BUTTON QUE CHAMA O MODAL CASO A CONDIÇÃO SEJA A DO ELSE IF-->
}
else if (@leito.StatusLeito.ToString() == "LIMPEZA")
{
<!--DIV Leito Em limpeza - Amarelo-->
<!--AQUI TEM UM CARD COM UM BUTTON QUE CHAMA O MODAL CASO A CONDIÇÃO SEJA A DO ELSE IF-->
}
else
{
<!--DIV Leito Interditado - Amarelo-->
<!--AQUI TEM UM CARD COM UM BUTTON QUE CHAMA O MODAL CASO A CONDIÇÃO SEJA A DO ELSE-->
}
<!--Modal - Alterar acomodação do leito-->
<form method="post">
<div class="modal fade" id="@string.Concat("alteraAcomodacao", leito.CdLeito.ToString())" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Editar informações do leito</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<label id="leitoSelecionado" value="@leito.CdLeito.ToString()"></label>
</div>
<div class="modal-body">
<p>Alterar o tipo de acomodação do leito</p>
<div class="input-group mb-3">
@{
<select class="custom-select" id="inputGroupSelect01">
<option selected>Selecione a nova acomodação...</option>
@for (int i = 0; i < hm.GetTipoAcomodacao().Rows.Count; i++)
{
<!-- ESSE FOR É PARA POPULAR UM DROPDOWN COM OS TIPOS DE ACOMODAÇÃO PARA O USUÁRIO SELECIONAR-->
<option value="@hm.GetTipoAcomodacao().Rows[i][0].ToString()">@hm.GetTipoAcomodacao().Rows[i][1].ToString()</option>
}
</select>
}
</div>
<br />
</div>
<div class="modal-footer">
<button type="button" class="btn btn-danger" data-dismiss="modal" id="btnCancelarAlteracoesLeito">Cancelar</button>
<button type="submit" class="btn btn-success btn-submit" formaction="@Url.Action("Index","Home", new { cdLeito = @leito.CdLeito.ToString(), novaAcomodacao = @hm.GetTipoAcomodacao().Rows[i][0].ToString() })">Salvar</button>
</div>
</div>
</div>
</div>
</form>
}
}
Controller
[HttPost]
public ActionResult Index(string cdLeito, string novaAcomodacao)
{
return View();
}
you can go through query string in the action url itself:
/controller/Index/?cdLeito=1&novaAcomodacao=2
for example– Ricardo Pontual