我對我的代碼有一種奇怪的問題。我有一個方法執行一個簡單的查詢並返回結果。我試圖返回的值作爲雙,但我得到一個錯誤:錯誤'不能將double轉換爲int'
CS0266 Cannot implicitly convert type 'double' to 'int'. An explicit conversion exists (are you missing a cast?)
我不想做任何轉換,所以我不知道是什麼問題。 下面是調用代碼:
double displacement = sqLite.GetDisplacement(transItem.Item.Name);
,這裏是被稱爲代碼:
public int GetDisplacement(string item)
{
double dDisposition = 0;
string sSql = "SELECT [Displacement] FROM [Items] WHERE [Name] = '" + item + "';";
using (var dbConnection = new SQLiteConnection(sConnectionString))
{
try
{
dbConnection.Open();
SQLiteCommand cmd = new SQLiteCommand(sSql, dbConnection);
object result = cmd.ExecuteScalar();
dDisposition = Convert.ToDouble(result);
}
catch (Exception e)
{
MessageBox.Show("Error retreiving displacement information: " + e.ToString());
}
}
return dDisposition; // This is where I get the error
}
我並不想的東西轉換,一切都被聲明爲雙。我試圖清理和重建解決方案多次無濟於事。我錯過了什麼?
'公衆詮釋...' –
你的函數聲明爲返回'int'所以,'返回dDisposition;'正試圖轉換到雙int – Plutonix
當你在將來遇到這個問題的時候,建議一下。大聲閱讀你的代碼**,你會很快發現問題。 –