簡體   English   中英

MVC 3中的下拉列表

[英]Drop-down List in MVC 3

看了許多下拉菜單示例后,這就是我的情況。

我有一個數據庫表: Companies

在我的注冊視圖模型中,我具有以下內容: public int? CompanyId { get; set; } public int? CompanyId { get; set; } public int? CompanyId { get; set; } (關於將其更改為public IEnumerable<Company> Companies { get; set; }想法)

在我的注冊視圖中,用戶可以選擇他所在的公司。 我希望在數據庫中有一個公司的下拉列表,供用戶選擇。

我建立了一個公司資料庫,以獲取所有公司並作為IEnumerable返回。

我該如何處理? 我最好在視圖模型或控制器中執行此操作嗎?

在模型中,聲明兩個屬性。

public int? CompanyId { get; set; }
public IEnumerable<SelectListItem> Companies { get; set; }

然后在您看來

@Html.LabelFor(x => x.CompanyId)
@Html.DropDownListFor(x => x.CompanyId, Model.Companies)

這將創建一個選擇列表,該列表將設置您的CompanyId屬性並將“公司”用作選項值。

您可以很容易地創建SelectList。 我想那會是

Companies.AddRange(
  aListOfCompanies.Select(x => 
    new SelectListItem { Text = x.CompanyName, Value = x.CompanyId.ToString() }));

在您的ViewModel中創建一個像like(GetCompanies())的方法,然后在Controller中創建一個SelectList對象,它返回您的viewModel對象。 那么您可以通過viewBag或模型中的屬性將其傳遞給視圖。

暫無
暫無

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

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