2013-04-12 39 views
0

我有在MySQL數據庫中檢索x的值並繪製它條形圖Windows窗體圖表。這是我第一次這樣做,所以我不知道爲什麼我得到這個錯誤。如何將字符串系統集合轉換爲int?

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]); 
+0

你在哪裏得到這個異常在代碼 –

+0

看看我的帖子thre是一條評論線那裏 – user2262382

+1

那麼,什麼* * a.mysqlSelect(「選擇從salessum總結」)真的嗎?因爲如錯誤所示,它顯然不是'int []'。嘗試'var obj = a.mysqlSelect(「從salessum中選擇總和」);'看看'obj'是什麼類型。也許你可以找到一種方法來從任何'obj'獲取'int []'。 – Corak

回答

0

,因爲你正在轉換清單時出現此錯誤INT []。你不能隱式做到這一點,你必須明確地做到這一點。您可以使用Linq輕鬆完成此操作。

我認爲a.mysqlSelect("select sum from salessum");是一個方法調用。進出把字符串列表(代表了許多每串)

是這樣的:

int[] pointsArray = a.mysqlSelect("select sum from salessum").Select(i => int.Parse(i)).ToArray(); 

link將有助於你。

編輯: 看看我剛​​才添加的LINK,並獲得你要完成的任務的想法。 :)

在此代碼

series.Points.Add(pointsArray[i]); 

Points.Add方法並不指望它需要一個int的字符串。你之前試圖做的是正確的。所以點數組必須是int[]。 我的意思是這樣的代碼:

int[] pointsArray = a.mysqlSelect("select sum from salessum"); 

我想我已經發現,要完成同樣的事情。請看看這LINK。這對你有幫助。

+0

如果您看到錯誤消息'a.mysqlSelect(「select sum from salessum」)'is a List [] not a List so你的代碼將無法工作。 –

+0

@ÖzgürKaplan:謝謝。 –

+0

請看我的更新! – user2262382