错误CS0266:无法将类型’object’隐式转换为’int’

错误CS0266:无法将类型’object’隐式转换为’int’。 存在显式转换(您是否错过了演员?)

int dd= 6000; sqlCmdDefaultTime = new SqlCommand("myQuery", sqlCon); sqlDefaultTime = sqlCmdDefaultTime.ExecuteReader(); while (sqlDefaultTime.Read()) { dd= sqlDefaultTime[1]; } 

我怎么能投

简单转换为int

 dd = (int)sqlDefaultTime[1]; 

试试这个…

 int.TryParse(sqlDefaultTime[1].ToString(), out dd); 

如果解析成功, dd现在将是一个新值。

当然除非对象已经是int,你可以把它投出来……

 dd = (int)sqlDefaultTime[1]; 

而不是索引器尝试使用SqlDataReader的GetXXX方法:

 dd = sqlDefaultTime.GetInt32(1); 

这里有更多GetXXX方法: http : //msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldatareader.aspx

的Integer.parseInt();

其他一些如TryParse和TryParseExact提供了更多的function和控制。

 dd= Integer.parseInt(sqlDefaultTime[1]); 

应该这样做,只要你能保证返回的值总是一个int。