簡體   English   中英

通過字典 <int,Double> 在Controller中查看並訪問View中的字典值以顯示圖表

[英]Passing a Dictionary<int,Double> from Controller to view and access the dictionary values from View to display a chart

我有一個控制器,用於填充字典,其中鍵為月,日期為0,5,10,15,20,25,30,值則為每個期間涵蓋的某個距離。 例如說:鍵5的詞典元素在該月的第0天到第5天之間具有距離。

Dictionary<int, double> ChartDetails = getDetails.getFMS1DataSet(FMS1Resultset);

我需要知道如何將此字典從Controller傳遞到View。 在“視圖”中,我訪問它們以顯示“天數VS覆蓋距離”圖表。 圖表是SyncFusion用戶控件

@(Html.EJ().Chart("container")
          .PrimaryXAxis(pr => pr.Range(ra => ra.Min(2005).Max(2011).Interval(1)).Title(tl => tl.Text("Days")))
          .PrimaryYAxis(pr => pr.Title(tl => tl.Text("Fuel Usage")).RangePadding(ChartRangePadding.None)
          .LabelFormat("{value}%").Range(ra => ra.Min(25).Max(50).Interval(5)))
          .CommonSeriesOptions(cr => cr.Type(SeriesType.Line).EnableAnimation(true)
          .Marker(mr => mr.Shape(ChartShape.Circle).Size(sz => sz.Height(10).Width(10)).Visible(true)).Border(st => st.Width(2)))
          .Series(sr =>
              {
                  sr.Points(pt =>
                      {
                          pt.X("0").Y(0).Add();
                          pt.X("5").Y().Add();
                          pt.X("10").Y().Add();
                          pt.X("15").Y().Add();
                          pt.X("20").Y().Add();
                          pt.X("25").Y().Add();
                          pt.X("30").Y().Add();
                      }).Name("Fuel").Tooltip(sr1 => sr1.Visible(true).Template("Tooltip")).Add();

              })
          .CanResize(true)

這里是pt.X(“ 5”)。Y()。Add(); 我希望將Y參數添加為Dictionary元素

由於字典不允許數據序列化,因此無法直接將字典值從視圖傳遞到控制器。 因此,我們創建了一個包含字典類型的視圖模型類。 字典值存儲在控制器的ViewBag中,並傳遞到用於為序列點分配值的視圖。 圖表中的X值應為字符串類型。因此,我們已將整數Value轉換為字符串。 Y值用作double。 我已附上示例鏈接供您參考。

http://www.syncfusion.com/downloads/support/directtrac/general/ze/WebApplication11359635681

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM