2012-02-22 8 views
0

MVC 3でパーシャルビューコントロールを作成して、このコントロールをアプリケーション全体で使用したいとします。私の部分的な見解には、国のためのものと州のものの2つのドロップダウンリストがあります。しかし、私はこれを使用して私はMVCで完璧なユーザーコントロールを作ることができますどのようにerror.pleaseアドバイスを得ている?どのように私はSQLからビューバッグを介してDDLにデータをバインドできますか?viewbagを使用して、MVC3のpartialviewのドロップダウンリストにデータをバインドします。

ありがとうございました。あなたは、次の例を試してみてください 、DDLに表示するIEnumerableを必要

答えて

4

のようなモデルを定義し、

public class MyModel 
{ 
public SchduleEnum SelectedCountry{ get; set; } 
public ProgramCatagory SelectedState{ get; set; } 
private IEnumerable<SelectListItem> stateList; 
private IEnumerable<SelectListItem> countriesList; 

public IEnumerable<SelectListItem> CountriesList; 
{ 
    get { return this.countriesList;} 
} 

public IEnumerable<SelectListItem> StateList 
{ 
    get { return this.stateList } 
} 

private void SetCountryList(IEnumerable<string> countries) 
{ 
    List<SelectListItem> items=new List<SelectListItem>(); 
    countries.ToList().ForEach(s=>{    
     items.Add(new SelectListItem() 
      { 
       Text = s, 
       Value = s 
      }); 
    }); 
    this.countriesList = items; 
} 

private void SetStateList(IEnumerable<string> states) 
{ 
    List<SelectListItem> items = new List<SelectListItem>(); 
    states.ToList().ForEach(s => 
    { 
     items.Add(new SelectListItem() 
     { 
      Text = s, 
      Value = s 
     }); 
    }); 
    this.stateList= items; 
} 
} 

あなたのコントローラを定義します(私がテストしていない、いくつかのタイプのエラーがあってもよいです)

01、

public PartialViewResult GetCountryList() 
{ 

    MyModel model = new MyModel(); 
var countries= *** ;//service call to get countries list 
var states = *** ;//service call to get stateslist 
    model.SetCOuntryList(countries); 
    model.SetStateList(states); 
    return View(model); 
} 

とビューで、様作用

+0

+1 manas.com総合的な仕事 –

関連する問題