Kendo 曾经有一些 ASP.NET MVC 演示,您可以下载并在 Visual Studio 中运行以查看如何绑定到远程数据等,但由于某种原因它们被删除了。这是我根据这些演示制作的一个简单示例:
控制器动作(例如在“ChartsController.cs”中):
public ActionResult Index()
{
return View();
}
public ActionResult GetChartData()
{
IEnumerable<ChartModel> chartData = SomeRepository.GetData();
return Json(chartData);
}
图表模型:
public class ChartModel
{
public ChartModel(string year, int val2, int val3)
{
Year = year;
Val2 = val2;
Val3 = val3;
}
public string Year { get; set; }
public int Val2 { get; set; }
public int Val3 { get; set; }
}
查看(“Charts/Index.cshtml”,不包括布局):
<div class="chart-wrapper">
@(Html.Kendo().Chart<ChartExample.Models.ChartModel>()
.Name("chart")
.Title("Example Column Chart")
.Legend(legend => legend
.Position(ChartLegendPosition.Top)
)
.DataSource(ds => ds.Read(read => read.Action("GetChartData", "Charts")))
.Series(series => {
series.Column(model => model.Val2).Name("Val2");
series.Column(model => model.Val3).Name("Val3");
})
.CategoryAxis(axis => axis
.Categories(model => model.Year)
.Labels(labels => labels.Rotation(-90))
)
.ValueAxis(axis => axis.Numeric()
.Labels(labels => labels.Format("{0:N0}"))
.MajorUnit(10000)
)
)
</div>
此示例使用单独的控制器操作来获取视图和获取图表的数据,但您也可以将它们组合起来,return View(chartData);
并在您的视图中拥有和仅拥有:
@model IEnumerable<ChartExample.Models.ChartModel>
<div>
@(Html.Kendo().Chart(Model)
// just don't include the ".DataSource" line
// ...
)
</div>
不幸的是,我不能告诉你它是否可以使用 Webforms 来完成,因为我以前从未使用过它。希望这可以帮助!