2016-04-13 4 views
0

私のビュー内のコントローラ(私の場合はカーソル)から返された結果を のコントローラから使用して、データが返されました。 コードを書きましたが、データをビューに渡す方法が見つかりませんでした。メソッドから返された結果をコントローラからビューに渡すにはどうすればいいですか?

//controller 
    [HttpPost] 
    public async System.Threading.Tasks.Task<ActionResult> drawgraph(Inputmodel m) 
    { 
     List<Client> client = new List<Client>(); 
     var collection = db.GetCollection<Client>("Client"); 
     var builder = Builders<Client>.Filter; 
     var beginDate = Convert.ToDateTime(m.date_begin).Date; 
     var endDate = Convert.ToDateTime(m.date_end).Date; 
     var filter = builder.Gte("date", beginDate) & builder.Lt("date", endDate.AddDays(1)) & builder.Eq("field2", m.taux); 
     var cursor = await collection.DistinctAsync<double>("field2",filter);  
     return View(cursor); 


    } 

//view 
@{ 
    var myChart = new Chart(width:600,height: 400) 
       .AddTitle("graphique") 
       .AddSeries(chartType: "Line") 
       .DataBindTable(dataSource: cursor, xField: "date", yField:"field2") //here I want to use the returnet result by drawgraph in the controller 
       .Write(); 
    } 
+0

モデルを作成し、そのモデルにデータを渡して、ビューでモデルを使用する必要があります。 – Kami

答えて

0

あなたは強くモデルにアクセスするには、ビューを入力する必要があります。

@model YourModelTypeHere @*type of the cursor variable*@ 
//view 
@{ 
    var myChart = new Chart(width:600,height: 400) 
         .AddTitle("graphique") 
         .AddSeries(chartType: "Line") 
         .DataBindTable(dataSource: Model, xField: "date", yField:"field2") //here I want to use the returnet result by drawgraph in the controller 
         .Write(); 
} 

をそして、あなたはあなたのモデルを得るためにWebビューページのモデルプロパティを使用することができます。

こちらのarticleをご覧ください。

0

あなたは、コントローラのビューで

ViewBag.MyData = cursor; 

//に

を使用することができます。コントローラからデータをacceessするに

@ViewBag.MyData 

ただし、厳密に型指定されたビューを使用することをお勧めします。

関連する問題