2016-03-24 3 views
0

こんにちは皆私は初心者です、コントローラデータをjavascript配列にロードするにはどうしたらいいですか?

私はMVC3(いくつかの制限のために)を介して選挙のアプリケーションを開発しています。私はすべてをやった。それはうまく動作します。しかし、私は私のアプリを視覚化するためにいくつかのチャートが必要です。

「静的数値」でうまく動作するものが見つかりました。私はデータベースから来る自分のデータをロードしたい。私はJavascriptでうまくいきません。ここに私はトラブルがあります。

var barChartData = { 
       labels: ["App1", "App2", "App3", "App3", "App4", "App5", "Soru6"], 
       datasets: [ 
            { 
             fillColor: "rgba(233, 78, 2, 0.9)", 
             strokeColor: "rgba(233, 78, 2, 0.9)", 
             highlightFill: "#e94e02", 
             highlightStroke: "#e94e02", 
             data: [65, 59, 90, 81, 56, 55, 40] 
            }, 
            { 
             fillColor: "rgba(79, 82, 186, 0.9)", 
             strokeColor: "rgba(79, 82, 186, 0.9)", 
             highlightFill: "#4F52BA", 
             highlightStroke: "#4F52BA", 
             data: [40, 70, 55, 20, 45, 70, 60] 
            } 
           ] 

      }; 

まず、いくつかのラベルをdbからLabels配列に読み込みたいとします。 (テーブル:User、Column Apps) 次に、いくつかのデータをデータ配列にロードします。 (テーブルUserQuestion、列QuestionAnswerRate)

これらのデータは両方ともModelまたはViewBag経由で取得できます。しかし、配列に読み込むことはできません。

どうすればいいですか?あなたのスクリプトでこの方法を行うことができます@Html.Rawを使用して

公共のActionResultインデックス(){

 ViewBag.Mevzuatlar = _mevzuat.SelectAll(); //First Chart 



     return View(_user.Find(f => f.Rol == true && f.KatildiMi == true)); //Second Chart 
    } 

答えて

0

var chartOneData = @Html.Raw(Json.Encode(Model)); 
var chartTwoData = @Html.Raw(Json.Encode(ViewBag.Data)); 
+0

するコントローラコード ViewBag.Data = _data.SelectAll()です。 returnView(_question.SelectAll()); – DBCooper

+0

だから、ViewBag.dataをjavascript配列またはModelに表示したいのですか? –

+0

両方。私はビューで2つの異なるチャートを持っています。そのうちの1つはモデルのデータを持っていて、もう1つはViewBag(またはより良いキャリア)のデータを持つ必要があります。ありがとうございます – DBCooper

関連する問題