none
Duas models na action Create RRS feed

  • Pergunta

  • Pessaol,

    Eu consigo trabalhar com mais de um model na mesma action, a assinatura com duas models.

    Quando faço isso ,ele valida somente uma model, a outra sempre vem true.

    Eu não queria criar varias action, queria somente uma.

    Essa model já, é a do banco

       [HttpPost]
            [ValidateAntiForgeryToken]
            public ActionResult Create(imoveis_dados_obras i_o_a, empreendimentos_fotos_obras i_o_s ,string cliente,int id)
            {
                
                    if (ModelState.IsValid)
                    {
                    }
            }
    Obrigado

    quinta-feira, 21 de dezembro de 2017 13:07

Respostas

  • Model é unico por definiçao. Model é o parametro que a açao Post vai enviar ao controler. O que o framework faz é procucar uma classe que tenha a mesma assinatura.

    Ou voce cria uma super classe (view model) com a fusao das classes do model 

    public class MainPageModel{
        public Model1 Model1{get; set;}
        public Model2 Model2{get; set;}
    }

    ou voce cria duas action com assinaturas diferentes.

    att


    William John Adam Trindade
    Analyste-programmeur


    Sogi Informatique ltée
    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer". Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".


    quinta-feira, 21 de dezembro de 2017 15:11
    Moderador

Todas as Respostas

  • Model é unico por definiçao. Model é o parametro que a açao Post vai enviar ao controler. O que o framework faz é procucar uma classe que tenha a mesma assinatura.

    Ou voce cria uma super classe (view model) com a fusao das classes do model 

    public class MainPageModel{
        public Model1 Model1{get; set;}
        public Model2 Model2{get; set;}
    }

    ou voce cria duas action com assinaturas diferentes.

    att


    William John Adam Trindade
    Analyste-programmeur


    Sogi Informatique ltée
    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer". Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".


    quinta-feira, 21 de dezembro de 2017 15:11
    Moderador
  • William,

    Nesse cenario(super class), ele nao gera scafold certo? tenho que fazer na unha?

    ex : ficaria assim?


     <div class="form-group">
               <div class="col-md-10">
                   @Html.EditorFor(model => model.Model1.Nome, new { htmlAttributes = new { @class = "form-control" } })
                   @Html.ValidationMessageFor(model => model.Model1.Nome, "", new { @class = "text-danger" })
               </div>
               <div class="col-md-10">
                   @Html.EditorFor(model => model.Model2.Nome, new { htmlAttributes = new { type = "file" } })
                   @Html.ValidationMessageFor(model => model.Model2.Nome, "", new { @class = "text-danger" })
               </div>
    </div>

    Obrigado

    sexta-feira, 12 de janeiro de 2018 14:16