2012-04-19 29 views
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,因爲它是一個文本字段我把值插入,但控制器oject objModel內示出的字段值中的一個是零:(:(爲什麼???在編輯mvc3中的webgrid時,爲什麼ModelState.IsValid爲false,因爲條件爲真?

+0

你能告訴我們什麼'SecurityMappingModel'看起來像,並向我們展示您的視圖嗎? – 2012-04-19 16:37:35

回答

1

顯然你的一個模型值是無效的,你應該能夠通過查看ModelState.Values中的項目找出哪一個項目,每個項目都有一個錯誤屬性 該行的結果至少應包含一個項目:

var errors = ModelState.Values.Where(value=>value.Errors.Any()); 
+0

At編輯時間'第三個字段是計算即將到來0,但爲什麼?':(我是新的PLZ幫助... – Neo 2012-04-19 14:33:32

+0

裏面objModel字段之一是有價值0,因爲它是一個文本字段,我正在把它的價值但內部控制器oject objModel顯示該字段值爲零:(:(爲什麼??? – Neo 2012-04-19 14:40:16

+0

如果沒有更多信息,很難分辨。你可以把相關的視圖代碼和模型類放入你的啓動文章中嗎? – Hanno 2012-04-19 17:11:55

相關問題