當試圖在我的代碼中調用此函數時,我在標題中出現錯誤。也算「+ =」不能應用於類型「詮釋」的操作數和「T」無法將類型'T'隱式轉換爲'Int'
public int Change<T>(Stats type, T value)
{
Dictionary<string, string> temp = new Dictionary<string, string>();
temp = sql.Query(string.Format("SELECT {0} FROM player WHERE fbId='{1}'", type.ToString(), FBId));
if (typeof(T) == typeof(int))
{
int t = Convert.ToInt16(temp[type.ToString()]);
t += value;
if (t < 0) return -1;
PlayerStats[type] = t;
}
sql.Upload(string.Format("UPDATE player SET {0}='{1}' WHERE fbId='{2}'", type.ToString(), PlayerStats[type], FBId));
return 0;
}
我通過調用該函數:
Change<int>(type, 1);
如果這個方法不是通用的,這個方法是通用的嗎? – dlev
如此明確地轉換它? –
Bobby Tables不會破壞您的數據庫,您有多自信? –