如何将字符串系统集合转换为整型
本文关键字:转换 整型 集合 系统 字符串 | 更新日期: 2023-09-27 18:08:41
我有一个windows窗体图表,检索mysql数据库中的x值,并在条形图上绘制它。这是我第一次这样做,所以我真的不知道为什么我得到这个错误。
public void loadChart()
{
string conn = "server=localhost;user=root;password='';database=cashieringdb;";
string cmdstring = "SELECT sum FROM salessum";
MySqlDataAdapter adapter = new MySqlDataAdapter(cmdstring, conn);
DataTable dt = new DataTable();
adapter.Fill(dt);
chart1.DataSource = dt;
this.chart1.Palette = ChartColorPalette.SeaGreen;
this.chart1.Titles.Add("Daily Record");
int[] pointsArray = a.mysqlSelect("select sum from salessum"); // error in this line
string[] seriesArray = { "Mon", "Tue", "Wed", "Th", "Fri" };
for (int i = 0; i < seriesArray.Length; i++)
{
Series series =this.chart1.Series.Add(seriesArray[i]);
series.Points.Add(pointsArray[i]);
}
这里的错误显示:无论多少时间搜索解决方案在互联网上,但仍然不能得到这个工作。或者有任何简单的方法来检索数据从数据库和绘图它在windows窗体图表?
Error 2 Cannot implicitly convert type 'System.Collections.Generic.List<string>[]' to 'int[]'
编辑
我把我的代码改成这样:
List<string>[] pointsArray = a.mysqlSelect("select sum from salessum"); //no error
本行错误:
series.Points.Add(pointsArray[i]);
发生此错误是因为您正在将List转换为int[]。你不能隐式地做这个,你必须显式地做。您可以使用Linq
轻松地完成此操作。
假设a.mysqlSelect("select sum from salessum");
是一个方法调用。输出一个字符串列表(每个字符串代表一个数字)
像这样:
int[] pointsArray = a.mysqlSelect("select sum from salessum").Select(i => int.Parse(i)).ToArray();
这个链接对你也会有帮助。
编辑:看看我之前添加的链接,了解一下你要完成的任务。:)
在这段代码中
series.Points.Add(pointsArray[i]);
Points.Add
方法不期望一个字符串,它期望一个int
。你刚才所做的是对的。所以点数组必须是int[]
。我指的是这段代码:
int[] pointsArray = a.mysqlSelect("select sum from salessum");
我想我已经找到了你想要完成的事情。请看看这个链接。这对你很有帮助。