SQL列数据到Array

时间:2013-11-20 09:47:11

标签: c# asp.net sql-server

如何将SQL-Server数据复制到c#中的数组中? 我想要做的是从SQL-Server中检索数据并将其存储到c#中的数组中 现在我有数组,但它是一个固定的数组,我想从这个数据中复制SQL Server中的数据。

public partial class Default2 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        hcVendas.YAxis.Add(new YAxisItem { title = new Title("Y") });
        hcVendas.XAxis.Add(new XAxisItem { categories = new[] { "1994", "1995", "1996", "1997", "1998", "1999", "2000", "2001", "2002" } });

        //New data collection
        var series = new List<Serie>();
        series.Add(new Serie { data = new object[] { 400, 435, 446, 479, 554, 634, 687, 750, 831 } });

        //bind 
        hcVendas.DataSource = series;
        hcVendas.DataBind();


    }

现在如何将数据绑定到SQL Server特定列的new []new object []

2 个答案:

答案 0 :(得分:2)

好吧,你需要将所有数据都提供给c#然后解析它

让SQL做出艰苦的努力。 (它只是转换为json字符串)。

例如,您可以使用生成json字符串表示的this sp(though i'm sure there are other alternatives as well)

示例:

enter image description here

输出:

enter image description here

现在,当您将其转换为c#时,只需将其作为就绪对象传递给javascript。

这一切都是真的。

所以 - 创建一个field

string myJson = GetFromDb();   //Lazy would be great here.(offtopic)

在客户端:

var myObj=JSON.parse(<%=myJson %>); //ie8+
//do whatever with myObj....

答案 1 :(得分:0)

这样的事情(假设您设置了SqlConnection和SqlCommand对象):

SqlDataReader reader = cmd.ExecuteReader();
List<string> column_as_list = new List<string>();
while (reader.Read())
{
    column_as_list.Add(reader.GetString(0));
}

显然,这会让你获得一个列表而不是一个数组。如果您迫切需要它作为一个数组,您可能需要使用您的选择计数,这样您就可以知道在循环之前制作数组有多大。