无法使用ASP.NET MVC6发布数据

时间:2016-10-20 11:13:49

标签: c# html asp.net-core-mvc

我很低 mvc6 c#技能,我试图发帖,当我总结它什么也不做。

它不会把我带到控制器,只是留在页面上。

我有更多页面,我不知道问题出在哪里,如果需要,我会添加其余的

这是我的控制器

using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WebApplication1.ViewModels;

namespace WebApplication1.Controllers.Web
{
  public class AppController : Controller
  {
    public IActionResult Index()
    {
        return View();
    }

    public IActionResult Contact()
    {

        return View();
    }

    [HttpPost]
    public IActionResult Contact(ContactViewModel model)
    {
        return View();
    }

    public IActionResult About()
    {
        return View();
    }
  }
}

这是我的联系方式:

@model WebApplication1.ViewModels.ContactViewModel

@{ 
ViewBag.Title = "Contact Page";
}

@section scripts{
<script src="~/lib/jquery-validation/dist/jquery.validate.js"></script>
<script src="~/lib/jquery-validation-        unobtrusive/jquery.validate.unobtrusive.min.js"></script>
 }
 <h2>Contact Me</h2>

  <form method="post">

    <span asp-validtaion-summary="ModelOnly"></span>

    <label asp-for="Name"></label>
   <input asp-for="Name"/>
   <span asp-validation-for="Name"></span>

   <label asp-for="Email"></label>
   <input  type="email" asp-for="Email"/>
   <span asp-validation-for="Email"></span>

  <label asp-for="Message"></label>
   <textarea cols="40" rows="4" asp-for="Message"></textarea>
   <span asp-validation-for="Message"></span>

   <div>
   <input type="submit" value="Send Message" />
   </div>

  </form>

1 个答案:

答案 0 :(得分:0)

你忘了告诉&#34;表格&#34;当用户提交时该怎么做。对于MVC6,您可以使用此标记帮助程序:

<form asp-controller="App" asp-action="Contact">
    ...
</form>

这将输出类似

的内容
<form action="/App/Contact" method="post">

现在浏览器知道动作网址以及发送到数据的位置。