我知道標題很混亂,所以我會試着更好地解釋。這裏的基本上是我想的方法裏面做:將參考圖元轉換爲泛型
if (record["id"] != DBNull.Value) _id = Convert.ToInt32(record["id"]);
else id = -1;
我想這對多種類型的,我已經保存在我的數據庫。 (所以如果它是一個字符串,它將其轉換爲一個字符串等等)。任何方式做到這一點都很好,我試圖用一種方法來做到這一點。我有這麼遠,但C#不會自動將int轉換爲對象。想法?
private void Load(ref object var, object obj, object def)
{
if (var is int)
{
var = Convert.ToInt32(obj);
}
}
int _id;
Load(ref _id, record["id"], -1);
只是爲了澄清,我的錯誤是「不能從ref int轉換爲ref對象」。 感謝您的幫助。
這仍然給了我同樣的錯誤,因爲參數類型不匹配。 – mrK 2012-02-06 18:25:20
另外,def只是一個默認值。 – mrK 2012-02-06 18:29:24
好的,如果foo == DBNull.Value會發生什麼? – mrK 2012-02-06 18:32:16