我正在創建一個訪問MySQL數據庫的系統,將項目作爲數據集表格檢索,並將每行的項目設置爲對象中的變量。我遇到的問題是,當將datarow.ItemArray [x]轉換爲一個整數時,我收到錯誤:System.InvalidCastException。 我檢查了數據庫,數據庫中的Item被定義爲Int(10)。 我也通過在Visual Studio中調試來檢查數據行,並且我試圖以整數形式投射的項目的值爲1. 我將在下面發佈我的代碼,但如果其他人有此問題並且可能知道它爲什麼會不勝感激。將DataRow項目轉換爲Int C時出錯#
foreach (DataRow dr in ds.Tables[0].Rows)
{
Group group = new Group();
group.TagID = (int)dr.ItemArray[0];
group.Name = dr[1].ToString();
group.Parent = parent;
這是班級組。
class Group
{
private int tagID;
private string name;
private Group parent;
List<Group> children = new List<Group>();
List<Tags> tags = new List<Tags>();
使用調試器,是什麼類型'博士[0]'?你也可以看看'ds.Tables [0] .Columns [0] .DataType' –
Name =「UInt32」FullName =「System.UInt32」 –
從圖像看來,你正在將int轉換爲int。嘗試只刪除演員。 –