![](/img/trans.png)
[英]MVC custom model binder using the default binder for certain form values
[英]Issue when assigning values to 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";
时遇到异常model.UserName = "test123@gmail.com";
public class RegisterBindingModel
{
public RegisterBindingModel();
[Display(Name = "User name")]
[Required]
public string UserName { get; set; }
}
您的RegisterBindingModel model
未初始化。
因此,发生未处理的null异常(对象引用未设置为对象的实例)。
因此,尝试类似:
public class RegisterBindingModel
{
[Display(Name = "User name")]
[Required]
public string UserName { get; set; }
}
public class PersonRegistration
{
RegisterBindingModel model= new RegisterBindingModel ();//initialized
[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);
}
此错误消息有些含糊,但它表示某些东西为空,您认为不是。
RegisterBindingModel model;
没有实例。 给它一个,它应该可以工作。 如果仍然出错,请将所有内容包装在try catch中并对其进行调试。
RegisterBindingModel model = new RegisterBindingModel();
您声明了一个模型,但没有初始化它以使其指向内存中的某个位置。 尝试编写RegisterBindingModel模型= new RegisterBindingModel();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.