ViewModel 值始终为空

ViewModel values are always null

我已经学习了一些教程,我也搜索了 Whosebug,但我仍然走投无路。

基本上,我正在尝试在 MVC 5 中提交表单(虽然是 MVC 的新手,但大量使用 WebForms)。所以这是我的组件 -

控制器(./Controllers/AccountController.cs)

using BitHost.Models;
using System.Web.Mvc;

namespace BitHost.Controllers
{
    public class AccountController : Controller
    {
        // GET: Account
        public ActionResult Index()
        {
            return View();
        }

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

        [HttpPost]
        public ActionResult Register(UserAccount model)
        {
            string sEmailAddress = model.EmailAddress;
            string sPassword = model.Password;
            bool bAgreedToTerms = model.AgreedToTerms;

            return Redirect("/");
        }
    }
}

ViewModel (./Models/AccountModel.cs)

namespace BitHost.Models
{
    public class UserAccount
    {
        public string EmailAddress;
        public string Password;
        public bool AgreedToTerms;
    }
}

查看(./Views/Account/Register.cshtml)

@{
    Layout = "~/Views/Shared/_Layout.cshtml";
    ViewBag.Title = "Register";
}

@model BitHost.Models.UserAccount

<div class="row">
    <h2>Create a new account</h2>
    @using (Html.BeginForm())
    {
        <div class="input-group">
            <span class="input-group-addon"><span class="glyphicon glyphicon-envelope" aria-hidden="true"></span></span>
            @Html.TextBoxFor(model => model.EmailAddress, new { Class = "form-control", Placeholder = "Email Address" })
        </div><br />
        <div class="input-group">
            <span class="input-group-addon"><span class="glyphicon glyphicon-lock" aria-hidden="true"></span></span>
            @Html.TextBoxFor(model => model.Password, new { Class = "form-control", Type = "password", Placeholder = "Password" })
        </div><br />
        <div class="input-group">
            <span class="input-group-addon"><span class="glyphicon glyphicon-lock" aria-hidden="true"></span></span>
            <input type="password" class="form-control" placeholder="Verify Password" />
        </div><br />
        <div class="input-group">
            @Html.CheckBoxFor(model => model.AgreedToTerms, new { Class = "form-control" })
        </div><br />

        <input type="submit" name="Submit" class="btn btn-default" />
    }
</div>

在注册表单上单击 "Submit" 后,我确实进入了创建帐户的 [HttpPost] 操作,但是从模型收集的变量都包含空值。

如有任何帮助,我们将不胜感激。

用户帐号不正确。像这样编辑