[英]Binding a DropDownList in the view to a column in table using ASP.NET MVC4
[英]Binding to a DropDownList in a ASP.NET MVC4 using Nhibernate
我是ASP.NET MVC和Nhibernate的新手
我遇到了這個要求,我必須搜索一個表才能在同一頁面中顯示數據。 用戶應該能夠通過四個輸入進行搜索。 姓名,身份證,出生日期和城市。 應該鍵入前三個,並從一個下拉列表中選擇城市,該下拉列表由城市同盟的不同值組成。
我已經開發了一個級別,用戶可以從名稱,ID,出生日期進行搜索。 但是我在將值綁定到下拉列表時遇到麻煩。
有人可以幫我這個忙。
好的,我找到了一種方法,但是我不確定這是否是最好的方法。
一個新的模型類
public class Countries
{
public virtual string citizenship { get; set; }
}
在控制器中,以我為例,在get和post中
TDAL tda = new TDAL();
//////////////////////
List<SelectListItem> list= new List<SelectListItem>();
list.Add(new SelectListItem { Text = "All", Value = "0" });
var cat = tda.getCountries().ToArray();
for (int i = 0; i < cat.Length; i++)
{
list.Add(new SelectListItem
{
Text = cat[i].citizenship,
Value = cat[i].citizenship.ToString(),
Selected = (cat[i].citizenship == "1")
});
}
ViewData["citizen"] = list;
////////////////////////////
return View();
DAL班
public IList<Countries> getCountries()
{
IList<Ter.Models.Countries> countries;
IQuery query;
using (ISession session = OpenSession())
{
try
{
query = session
.CreateQuery("select distinct citizenship AS citizenship from Ters")
.SetResultTransformer(Transformers.AliasToBean<Countries>());
}
catch (Exception c)
{
query = null;
}
countries = query.List<Countries>();
}
return countries;
}
和視圖
@Html.DropDownList("citizenship", (IEnumerable<SelectListItem>)ViewData["citizen"], new { id = "citizenship" })
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.