为什么在清楚地发送数据时我得到一个空引用。

时间:2018-08-16 18:26:06

标签: c# asp.net-mvc

好吧,很简单,我只是想创建一个注册表格,一旦我将其注册或重定向,我就希望根据选择将某人注册为候选人,公司或管理员。

问题在于,在尝试实现下拉列表之前,我的表单非常有用。

这是我在View中实现的代码

<div class="page-login-form">


                @using (Html.BeginForm("Register", "Account", FormMethod.Post, new {@class = "login-form"}))
                {

                    @Html.LabelFor(m=>m.User.Name)
                    @Html.TextBoxFor(m=>m.User.Name, new { @class = "form-control" })

                    @Html.LabelFor(m=>m.User.Email )
                    @Html.TextBoxFor(m=>m.User.Email, new { @class = "form-control" })

                    @Html.LabelFor(m=>m.User.Password )
                    @Html.PasswordFor(m=>m.User.Password, new { @class = "form-control" })
                    <div class="alert-danger">  @Html.ValidationMessageFor(m => m.User.Password)</div>

                    @Html.LabelFor(m => m.User.ConfirmPassword)
                    @Html.PasswordFor(m => m.User.ConfirmPassword, new { @class = "form-control" })
                    <div class="alert-danger"> @Html.ValidationMessageFor(m => m.User.ConfirmPassword)</div>


                     @Html.DropDownListFor(m=>m.User.UserRoleId,new SelectList(Model.UserRoles,"Id","Name"),"select your registration", new { @class = "form-control" })

                    <button type="submit" class=“btn btn-­‐primary”>Save</button>

                }



            </div>

这是我实现的ViewModel

   using System;
  using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using Visume.Models;

     namespace Visume.ViewModel
    {
       public class RegisterViewModel1
      {
             public IEnumerable<UserRole> UserRoles { get; set; }
              public  User User { get; set; }
      }
     }

这是控制器中的代码

   public ActionResult Register()
{
    var userrole = _context.UserRoles.ToList();

    var viewmodel=new RegisterViewModel1
    {
        UserRoles=userrole
    };

    return View(viewmodel);
}

--------------------------------------------------------------

[HttpPost]
 public ActionResult Register( User registered)
{
    return View();
}

http://prntscr.com/kjbqt3

现在错误非常简单,可以在打印屏幕上看到

当我运行调试器时,这就是我得到的https://prnt.sc/kjcr6r,基本上我可以看到的是数据正在从View传递到Controller。看一下UserRoleID,它显然是 2 ,但是当我进一步进行操作时,我仍然收到未处理Null引用的错误。我要去哪里错了,为什么。这是一个学习项目,如果你们也想自己测试,我可以完全共享文件。请提供帮助。

0 个答案:

没有答案