none
MVC - Formulario RRS feed

  • Pergunta

  • Tenho um botao submit no meu cshtml so que ele nao e' disparado para o controller.

    HOME CSHTML

    @model q.MVC.Models.Formulario

    @{
        ViewBag.Title = "Q";
    }

    @using (Html.BeginForm())
    {
        @Html.ValidationSummary()

             @Html.TextBoxFor(m => m.LastName, new { placeholder = "Last Name" , @class = "form-control" })
                     @Html.TextBoxFor(m => m.Email, new { placeholder = "Email" , @class = "form-control" })
                     @Html.TextBoxFor(m => m.Phone, new { placeholder = "Phone" , @class = "form-control" })
                     <input type="submit" value="Solicitação de Orçamento" />
    }

    HOME CONTROLLER

    namespace q.MVC.Controllers
    {
        public class HomeController : Controller
        {
            public ActionResult Index()
            {

            public ActionResult Formulario()
            {
                return View();
            }

            [HttpPost]
            public ActionResult Formulario(FormularioModel formulario)
            {
                try
                {
                    return RedirectToAction("ThankYou");
                }
                catch
                {
                    return View();
                }
            }

            public ActionResult ThankYou()
            {
                return View();
            }
        }
    }

    FORMULARIO MODEL 

    namespace q.MVC.Models
    {
        public class FormularioModel
        {
            [Required(ErrorMessage = "O nome do contato deve ser informado.!")]
            [StringLength(50, MinimumLength = 5)]
            public string FirstName { get; set; }

            [Required]
            [DisplayName("First Name")]
            public string LastName { get; set; }

            [Required(ErrorMessage = "O email é obrigatório!")]
            [DataType(DataType.EmailAddress)]
            public string Email { get; set; }

            [Required(ErrorMessage = "O telefone deve ser informado.!")]
            [DataType(DataType.PhoneNumber, ErrorMessage = "Forneça o número do telefone no formato (000) 000-0000")]
            [DisplayName("Número do Telefone")]
            public string Phone { get; set; }

        }
    }

    quinta-feira, 31 de outubro de 2013 19:22

Todas as Respostas

  • Cara na configuração do Modelo o nome está diferente do seu MODELO, de acordo com o código que você postou o correto é...

    @model q.MVC.Models.FormularioModel


    Leonardo Lourenço Silva


    quinta-feira, 31 de outubro de 2013 20:03