簡體   English   中英

如何使用c#枚舉在ASP.Net MVC中創建一組多選復選框?

[英]How do I make a group of multi-select checkboxes in ASP.Net MVC with c# enum?

我需要設置一組復選框,用戶可以在其中選擇一個或多個市場。 我通常會使用一組布爾值來完成此操作,因為這是相當困難的,在我看來,它們僅是布爾值,因此不會占用數據庫中的太多空間或花費那么長的時間來加載它們。 我建議我可以在數據庫中為復選框列表使用單個枚舉值。 例如這里是枚舉

[Flags]
public enum Markets 
{

    Canada = 2,
    USA = 4,
    Iceland = 8,
    Brazil = 16,
    Italy = 32,
    Japan= 64,

}

然后在數據庫中,我可以為加拿大,美國和冰島存儲14個。 我想知道是枚舉MVC中的復選框的方式嗎?如果可以,它將如何工作?

注意我正在使用C#MVC4和實體框架5,但是我將過渡到MVC5實體框架6。

在ASP.NET MVC中,這非常簡單,只需確保頁面上具有相同名稱的輸入列表並且綁定到后端的列表即可。

<form method="post" action="/Home/UpdateInts">
    <input type="checkbox" name="Markets" value="Canada" />
    <input type="checkbox" name="Markets" value="USA" />
    <input type="checkbox" name="Markets" value="Iceland" />
    <input type="checkbox" name="Markets" value="Brazil" />
    <input type="submit" />
</form>

那應該做。 您可以使用HtmlHelpers來創建它們,也可以只使用Razor語法。

這是一些更有用的信息。

http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM