1
要驗證綁定到一個具體類型HttpPost行動,我可以用ModelState.IsValidif(ModelState.IsValid)不能與FormsCollection一起使用。代替使用什麼?
public ActionResult Create(MyModelType myModel)
{
if(ModelState.IsValid)
{
// Do some stuff
return RedirectToAction("Details", 0);
}
else
{
return View();
}
}
這顯然不會有FormCollection
工作,因爲沒有模型驗證
public ActionResult Create(FormCollection collection)
{
if(ModelState.IsValid) // Never invalid
{
當動作接受FormCollection
時,應該用什麼來代替ModelState.IsValid
?
附:千道歉,我知道這是一個愚蠢的問題
感謝您的伴侶。我想克服的問題是。 。 。我的第一個Asp Mvc應用程序(這也是我的第一個 - 從零開始 - Web應用程序)是一個內部概念證明,需要在運行時創建動態表單。 UpdateModel是一個通用的方法,我不會在編譯時知道模型類型。有什麼建議麼? – 2011-06-10 10:44:43
@Binary Worrier,因爲驗證是在你的模型上定義的,所以你需要一個模型。如果你有一些動態表單,那麼你將不得不手動進行驗證。就像讀取請求值(當然這將是一個字符串),將其解析爲相應的類型,驗證它是否有效,以及是否不添加模型錯誤等等。這裏沒有魔法。 – 2011-06-10 11:00:26
這就是我要去的方式,謝謝你的所有幫助伴侶。 。 。附:我一直在尋找大約20個小時左右的Asp Mvc,我仍然處於**所有**看起來像神奇的階段:)我需要手動完成所有的驗證實際上會簡化一些事情。再次感謝隊友。 – 2011-06-10 11:07:18