2009-04-14 82 views
2

什麼是Correct(TM)通過asp.net MVC和強類型視圖處理複選框的方式。我有一個班'Bar',有一個'foo'成員。 'foo'是類型'字節'。在Asp.net MVC中使用強類型視圖處理複選框

現在我想這樣做,是在控制器是這樣的:

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult Page(Bar bar) 
{ 
    if (ModelState.IsValid) 
    {  
     SaveChanges(bar); 
... 

而且像這樣的觀點

<%=Html.CheckBox("foo", Model.foo) %> 

當然上面的代碼不工作,因爲DefaultModelBinder(?)不知道如何將複選框(討論的here)的輸出轉換爲字節,因此ModelState.IsValid爲false。

如何使它工作?定製模型粘合劑?怎麼樣?看起來像一個簡單的問題,但我沒有找到一個全面的指導如何做到這一點。 (是的,我知道我吮吸谷歌搜索:-)

回答

4

在您的模型 - 將字節轉換爲布爾屬性。您仍然可以以字節的形式存儲在數據庫中。只需讓get/set使用bool並在那裏轉換即可。

相關問題