我現在有一個方法來查看輸入是什麼類型的對象,並基於它創建一個SQL輸入,就像這樣:TYPEOF無法正常運轉的條件
private static string PropertyToDBString(object o)
{
Debug.Log(o.GetType());
if (o == typeof(System.String) || o == typeof(string))
return "'" + o.ToString() + "'";
else if (o == typeof(System.Boolean) || o == typeof(bool))
return ((System.Boolean)o) ? "1" : "0";
return "'" + o.ToString() + "'";
}
但這似乎並沒有工作,一切以.toString()爲基礎返回,布爾返回值爲True/False,但日誌正在拾取類型爲system.boolean。像這樣:
我使用SQLite的,不知道我是否應該打擾使用適當的數據類型,不存在限制,甚至是事實上的布爾列是INT(1)數據庫,但仍然存儲真/假。我應該只使用TEXT處理所有事情。
我還沒有做C#一段時間,但'o == typeof'看起來不正確。像'o.type == typeof'這樣的東西更有意義。請參閱http://stackoverflow.com/questions/983030/type-checking-typeof-gettype-or-is – John3136
如果您的問題已得到滿意答覆,請選擇一個答案來關閉此問題。謝謝! –