2016-12-19 5 views
0

を表示するために、私はこの方法を使用して表示するためにコントローラからリストとして生じるフェッチ1つのデータベースを送信することができる:C#のmvc5は、複数のリスト、オブジェクトを渡す...コントローラから

var all_companies = db_cnx.Db.tbl_company.ToList(); 
var all_contractors = db_cnx.Db.tbl_contractor.toList(); 

return View(all_companies); 

が、どのようにすることができ複数のオブジェクトやリストを送信して、表示するには? like:

return view(all_companies, all_contractors) 

これは可能ですか? 1つのViewItemを宣言し、その中にvarsの組み合わせを格納し、新しいデータセットを返さなければならないと言ったコメントを読んだが、どうやって?

+1

ルックViewModel – Marco

答えて

2

Viewには、1つのクラスのみを返すことができます。

これらのリストでモデルクラスを作成し、そのモデルを渡す必要があります。ビューで

public class MyModel { 
    public List<Company> Companies {get;set;} 
    public List<Contractor> Contractors {get;set; } 
} 

var all_companies = db_cnx.Db.tbl_company.ToList(); 
var all_contractors = db_cnx.Db.tbl_contractor.toList(); 
var model = new MyModel { 
    Companies = all_companies, 
    Contractos = all_contractors 
} 

return View(model); 

あなたのモデルの代わりに、そのようなリストを使用している:

@model MyModel 

と使用方法:と呼ばれる概念について

@Model.Companies 
@Model.Contractors 
関連する問題