C# 如何将数组数据从asp.net页面传递到javascript代码?

C# 如何将数组数据从asp.net页面传递到javascript代码?,c#,javascript,html,asp.net,arrays,C#,Javascript,Html,Asp.net,Arrays,我有一个带有javascript代码的图表模板,这是其中的一部分: // Toggling Series var datasets = { "Iran": { label: "IR", data: [ [1988, 483994], [1989, 479060], [1990, 457648],

我有一个带有javascript代码的图表模板,这是其中的一部分:

// Toggling Series 
    var datasets = {
        "Iran": {
            label: "IR",
            data: [
                [1988, 483994],
                [1989, 479060],
                [1990, 457648],
                [1991, 401949],
                [1992, 424705],
                [1993, 402375],
                [1994, 377867],
                [1995, 357382],
                [1996, 337946],
                [1997, 336185],
                [1998, 328611],
                [1999, 329421],
                [2000, 342172],
                [2001, 344932],
                [2002, 387303],
                [2003, 440813],
                [2004, 480451],
                [2005, 504638],
                [2006, 528692]
            ]
        },
        "russia": {
            label: "Russia",
            data: [
                [1988, 218000],
                [1989, 203000],
                [1990, 171000],
                [1992, 42500],
                [1993, 37600],
                [1994, 36600],
                [1995, 21700],
                [1996, 19200],
                [1997, 21300],
                [1998, 13600],
                [1999, 14000],
                [2000, 19100],
                [2001, 21300],
                [2002, 23600],
                [2003, 25100],
                [2004, 26100],
                [2005, 31100],
                [2006, 34700]
            ]
        }
   };
现在,我想将数据从数组变量传递到java脚本,以便在asp.net页面加载事件中替换为该数据。 如何将数组列表传递给此?可以写一个示例代码吗


注意:我的数据很大,这个java脚本数据只是示例数据,最好传递数组或变量

不能直接将变量从.NET应用程序传递到客户端JavaScript。相反,您需要在脚本源中包含完整的列表数据,就像上面部分所做的那样,或者使用AJAX或类似工具从服务器查询数据

您可以使用类似于JSON.net的东西来缩短代码,以序列化要嵌入的对象:

var datasets = <%= NewtonSoft.Json.JsonConvert.SerializeObject(ViewBag.datasets) %>;
或者你可以自己编写代码来生成布局。。。就我个人而言,我更喜欢简单的JsonConvert选项。

类似这样的东西,我还没有测试过

在.cs文件中创建一个方法:

[WebMethod]
  public static string GetData()
  {
    var datasets = {
        "Iran": {
            label: "IR",
            data: [
                [1988, 483994],
                [1989, 479060],
                [1990, 457648],
                [1991, 401949],
                [1992, 424705],
                [1993, 402375],
                [1994, 377867],
                [1995, 357382],
                [1996, 337946],
                [1997, 336185],
                [1998, 328611],
                [1999, 329421],
                [2000, 342172],
                [2001, 344932],
                [2002, 387303],
                [2003, 440813],
                [2004, 480451],
                [2005, 504638],
                [2006, 528692]
            ]
        },
        "russia": {
            label: "Russia",
            data: [
                [1988, 218000],
                [1989, 203000],
                [1990, 171000],
                [1992, 42500],
                [1993, 37600],
                [1994, 36600],
                [1995, 21700],
                [1996, 19200],
                [1997, 21300],
                [1998, 13600],
                [1999, 14000],
                [2000, 19100],
                [2001, 21300],
                [2002, 23600],
                [2003, 25100],
                [2004, 26100],
                [2005, 31100],
                [2006, 34700]
            ]
        }
   };

return dataset;
  }
然后在jquery加载/文档准备功能中:

$.ajax({
  type: "POST",
  url: "PageName.aspx/GetData",
  data: "{}",
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  success: function(data) {
    $("domelement").html(data);
  }
});

使用web方法:@Zaki如何使用它?