我有一个简单的asp.net core 2.0 webapi。我有一个模型,也从标题中获取值。我在控制器动作中设置了模型属性,并按如下所示进行了模型验证。
[HttpPost]
public async Task<IActionResult> Search(AggregateSearchCriteria criteria)
{
var providers = Request.Headers["providers"];
criteria.Providers = providers.ToString().Split(',').ToList();
ModelState.Clear();
//fails here
TryValidateModel(criteria);
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
return ok();
}
它工作正常,但是当我编写单元测试时,它在TryValidateModel行上失败了。我可以在Google中看到一些帮助,但似乎没有帮助。
任何人都可以帮助解决此问题吗?
单元测试中的错误是:
AggregateSearchControllerTests.TestAggregateSearchWithValidData threw exception:
System.NullReferenceException: Object reference not set to an instance of an object.
谢谢