透過Linq To Entity Framwork 從 DB裡面撈出資料,產生DrowpDownList
在Model這邊訂好資料來源
public SelectList Get_SeletList()
{
SelectList li ;
var query = (from de in db.TEST_TableA.AsQueryable()
where de.COLUMNA == "900"
select new
{
ItemText = de.ORG_ID + " " + de.ORG_NAME,
ItemValue = de.ORG_ID
}).ToList();
if (query != null)
{
li = new SelectList(query, dataValueField: "ItemValue", dataTextField: "ItemText");
return li;
}
else{
return null;
}
}
定義ViewModel
//ViewModel
public class TestViewModel
{
// 預設要選取的值
public String SeletedValue{get;set;}
// 下拉式控制項內的資料
public SelectList Test_ListItem { get; set; }
}
然後再Controller準備好要傳到View的資訊
TestViewModel model = new TestViewModel ();
//剛剛定義從DB裡面撈出來的資料
model.Test_ListItem = ap0011.Get_SeletList();
model.SeletedValue = "指定預設的值";
最後View的地方:
<div class="form-group">
<label class="control-label col-md-2 " for="selTestID">測試下拉式選單FromDB:</label>
<div class="col-md-3 ">
@*@Html.DropDownListFor 第一個參數接預設要選擇的資料,第二個參數接下拉式選單內的值*@
@Html.DropDownListFor(c => c.SelectValue, (SelectList)Model.Test_ListItem, new { @class = "form-control", id = "selTestID", style = "" })
</div>
</div>
以上。