有点神秘。我有一个带有 Year 属性的视图模型:
public class TradeSpendingSalesViewModel
{
public string ProductCode { get; set; }
public IEnumerable<SelectListItem> AllowTypeSelect { get; set; }
public string AllowType { get; set; }
public IEnumerable<SelectListItem> YearsSelect { get; set; }
public int Year { get; set; }
}
如果我将一个空视图模型发布到我的控制器:
[HttpPost]
public ActionResult Index(TradeSpendingSalesViewModel vm)
{
var allErrors = ModelState.Values.SelectMany(v => v.Errors);
foreach (var e in allErrors)
{
Response.Write(e.ErrorMessage);
}
}
然后我收到一条错误消息:“需要年份字段”。
由于我没有使用该Required
属性注释 viewmodel Year 字段,因此我不清楚为什么会生成此错误。
有任何想法吗?