在一个 asp.net core 3.0 preview 5 中实现了一个 view component ,运行时出现下面的错误:
System.InvalidOperationException: A view component must return a non-null value.
at Microsoft.AspNetCore.Mvc.ViewComponents.DefaultViewComponentInvoker.CoerceToViewComponentResult(Object value)
InvokeAsync 方法的实现如下:
public async Task<IViewComponentResult> InvokeAsync(AggSiteModel model)
{
if (model == null) return null;
model.Posts ??= await GetPostsAsync(model);
if (model.Posts == null) return null;
return View("PostList", model.Posts);
}
请问如何解决?
是 return null
引起的,改为 return Content(string.Empty)
就可以了