Asp.net mvc 3 基于Asp.net MVC的KendoUI图表
我正在寻找有关如何使用从数据库获取的数据在网页上显示KendoUI图表的教程和代码示例。更确切地说是一个ASP.NETMVC网页;类似于服务器端需要做的事情,以便能够显示根据KendoUI图表上显示的控制器方法计算的数据 具体问题如下:Asp.net mvc 3 基于Asp.net MVC的KendoUI图表,asp.net-mvc-3,kendo-ui,Asp.net Mvc 3,Kendo Ui,我正在寻找有关如何使用从数据库获取的数据在网页上显示KendoUI图表的教程和代码示例。更确切地说是一个ASP.NETMVC网页;类似于服务器端需要做的事情,以便能够显示根据KendoUI图表上显示的控制器方法计算的数据 具体问题如下: KendoUI是否仅与服务一起工作,或者甚至可以在中返回ViewModel对象 ActionResult方法,如返回视图(vmObj) 服务器端是否有返回KendoUI图表的代码示例 KendoUI是否仅在MVC中工作,或者是否也可以在Asp.NETWebFor
返回视图(vmObj)代码>李>
服务器端是否有返回KendoUI图表的代码示例
KendoUI是否仅在MVC中工作,或者是否也可以在Asp.NETWebForms中使用
到目前为止,我看到的KendoUI文档只显示客户端代码,并不是针对AspNet MVC开发人员定制的
谢谢您的时间。以下是您的问题的一些答案(未排序)
看一下这个演示-我想它会满足你的需求。使用图表下方的按钮检查视图/控制器和模型
请注意,即使集合已传递到服务器上的图表图表始终在客户端上初始化
只要有数据可供使用,您可以在任何地方使用KendoChart。同样,它可以是本地JavaScript数组JSON,这是调用服务/控制器的结果
Kendo以前有一些ASP.NET MVC演示,您可以下载这些演示并在Visual Studio中运行,以了解如何绑定到远程数据等,但由于某种原因,它们被删除了。下面是我根据这些演示制作的一个简单示例:
控制器操作(例如在“ChartsController.cs”中):
视图(“Charts/Index.cshtml”,不包括布局):
不幸的是,我不能告诉你是否可以用Webforms完成,因为我以前从未使用过。希望这有帮助 Kendo UI为ASP.NET MVC提供了官方包装
它们取代了旧的用于ASP.NET MVC的Telerik扩展。现有用户应该看看。完整的文档是本手册的一部分
包含服务器端包装器和脱机演示。您可以在kendoui.trial.x.y.z.zip
包的wrappers\aspnetmvc
文件夹中找到它们。谢谢,但该链接没有多大帮助。它的Telerik代码不适用于剑道,我找不到代码使用的Telerik属性的KendoUI变通方法。。。
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; }
}
<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>
@model IEnumerable<ChartExample.Models.ChartModel>
<div>
@(Html.Kendo().Chart(Model)
// just don't include the ".DataSource" line
// ...
)
</div>