Asp.net mvc 3 基于Asp.net MVC的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

我正在寻找有关如何使用从数据库获取的数据在网页上显示KendoUI图表的教程和代码示例。更确切地说是一个ASP.NETMVC网页;类似于服务器端需要做的事情,以便能够显示根据KendoUI图表上显示的控制器方法计算的数据

具体问题如下:

  • KendoUI是否仅与服务一起工作,或者甚至可以在中返回ViewModel对象 ActionResult方法,如
    返回视图(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>