0
[HttpPost]
public ActionResult Index(SecurityMappingModel objModel)
{

    //edit code

    if (objModel.Id != Guid.Empty)
    {
        if (ModelState.IsValid)
        {
            mappings = (List<SecurityMappingModel>)Session["Mappings"];
            var objRemove = mappings.FirstOrDefault(m => m.Id == objModel.Id);
            if (objRemove != null)
            {
                mappings.Remove(objRemove);
                mappings.Add(objModel);
                ViewBag.Mappings = mappings;
            }
            Session["Mappings"] = mappings;
return RedirectToAction("Index");
}

在 objModel 内部,其中一个字段的值为 0,因为它是一个文本字段,我正在将值放入其中,但在 Controller oject objModel 内部显示该字段值为 0 :( :( 为什么???

4

1 回答 1

1

显然您的模型值之一无效。您应该能够通过查看 ModelState.Values 中的项目来找出是哪一个。每个项目都有一个 Errors 属性。此行的结果应至少包含一项:

var errors = ModelState.Values.Where(value=>value.Errors.Any());
于 2012-04-19T14:22:47.783 回答