将值分配给Custom Model Binder

时间:2017-06-01 06:30:33

标签: c# asp.net-mvc model-binding custom-binding custom-model-binder

我正在

  

***** Tests.dll中出现'System.NullReferenceException'类型的异常,但未在用户代码中处理

     

附加信息:未将对象引用设置为对象的实例。

如何正确地为绑定模型指定值?

public class PersonRegistration
{
    RegisterBindingModel model;
    [TestMethod]

    public void TestMethod1()
    {
        AccountController ac = new AccountController(userManager, loggingService);
        model.UserName = "test123@gmail.com";
        var result = ac.Register(model);
        Assert.AreEqual("User Registered Successfully", result);
    }

我在执行model.UserName = "test123@gmail.com";

时遇到异常
public class RegisterBindingModel
{
    public RegisterBindingModel();
    [Display(Name = "User name")]
    [Required]
    public string UserName { get; set; }
}

3 个答案:

答案 0 :(得分:1)

您的$arr[]=date("n-Y", mktime(0, 0, 0, $month-$i, 01, $year)); 未初始化。

  

因此,未处理的null异常(对象引用未设置为对象的实例).occurred。

所以尝试类似:

RegisterBindingModel model

答案 1 :(得分:1)

此错误消息有点神秘,但它表示某些内容为空,您认为不是。

RegisterBindingModel model;没有实例。给它一个它应该工作。如果它仍然是错误,请将所有内容包装在try catch中并进行调试。

RegisterBindingModel model = new RegisterBindingModel();

答案 2 :(得分:0)

你声明了一个模型,但你没有初始化它,因为它指向内存中的某个位置。试着写 RegisterBindingModel model = new RegisterBindingModel();