2014-04-28 23 views
0

净MVC中获取数据,我搜索了太多的网站,从数据库中的数据读取到列表框,但我没有得到任何合适的回答,如何从数据库列表<>

我每个站点有一个硬编码例如,对于清单<>这样,

public SelectList GetAllCountryList() 
    { 
     List<Country> objcountry = new List<Country>(); 
     objcountry.Add(new Country { Id = 1, CountryName = "India" }); 
     objcountry.Add(new Country { Id = 2, CountryName = "USA" }); 
     objcountry.Add(new Country { Id = 3, CountryName = "Pakistan" }); 
     objcountry.Add(new Country { Id = 4, CountryName = "Nepal" }); 
     SelectList objselectlist = new SelectList(objcountry, "Id", "CountryName"); 
     return objselectlist; 
    } 

此标识的硬编码的,但我想从数据库获取它,我知道我需要去申请查询 这样

public List<Country> allname = new List<Country> 
{ 
    //query 
}; 

但我不知道我应该如何使用它,或者这是否是正确与否

请帮忙解决这个

+1

如何进行数据库调用。你使用的是什么库?你在使用实体框架/任何/你自己的DAL吗? –

+0

我使用实体框架 – user3449277

回答

0

如果您正在使用实体框架

public class YouController:Controller 
{ 
    private YourDBContext db = new YourDBContext(); 

    public SelectList GetAllCountryList() 
    { 
    var countries= db.Countries.ToList(); 
    SelectList objselectlist = new SelectList(countries, "Id", "CountryName"); 
    return objselectlist; 
    } 

} 
1

在库中,您可以创建这样,

public IQueryable<Country> GetCountries() 
    { 
     return from country in _db.Countries 
       orderby country.Name ascending 
       select country; 
    } 

在控制器:

In controlle r获取视图,创建一个viewdata并将值分配给该视图。无需创建列表..

ViewData["Countries"] = new SelectList(_repository.GetCountries(), "Id", "Name"); 

要将所有显示这些眼帘手段,

<%: Html.DropDownList("Countries" + i.ToString(), new SelectList(countries, "Id", "Name"))%> 

希望ATLEAST你可以得到的想法。

+0

好吧,但你能告诉我我应该在模型中定义什么 – user3449277

相关问题