![](/img/trans.png)
[英]How does List<SelectListItem> safely cast to SelectList in view
[英]Cast from List to SelectListItem
我需要將我從數據庫獲得的列表轉換為SelectListItem
,以便顯示它的下拉列表,我嘗試了以下代碼
public List<SelectListItem> Liste_proprietaire()
{
List<SelectListItem> selectList = new List<SelectListItem>();
var maListe = (from p in db.reqopt
where (p.categorie.Contains("proprietaire"))
select new
{
str = p.valeur
}).ToList();
foreach (var x in maListe)
{
selectList.Add(x);
}
return selectList;
}
他們在selectList.Add(x)
下給我一個錯誤,告訴我Add
函數具有無效的參數。
x
是匿名類的實例(使用new { }
創建)。 您不能立即將其轉換為SelectListItem
。
您可以自己做:
selectList.Add(new SelectListItem() { Value = x.str });
或直接從LINQ表達式創建SelectListItem
項目:
select new SelectListItem()
{
Value = p.valeur
}
您必須使用SelectListItem
而不是anonymous
類型。 嘗試這個。
public List<SelectListItem> Liste_proprietaire()
{
List<SelectListItem> selectList = new List<SelectListItem>();
var maListe = (from p in db.reqopt
where (p.categorie.Contains("proprietaire"))
select new SelectListItem
{
Text = p.valeur,
Value = p.value //Put your value column here
}).ToList();
foreach (var x in maListe)
{
selectList.Add(x);
}
return selectList;
}
注意 :您必須相應地更新SelectListItem
的Value
屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.