對象是一個類,它有一個屬性Values
這是一個字典。C#中的TryGetValue不適用於字符串,是嗎?
以下是Values屬性的擴展方法。
public static T TryGetValue<T>(this Row row, string key)
{
return TryGetValue(row, key, default(T));
}
public static T TryGetValue<T>(this Row row, string key, T defaultValue)
{
object objValue;
if (row.Values.TryGetValue(key, out objValue))
{
return (T)objValue;
}
return defaultValue;
}
如果我做的:
user.Username = user.Values.TryGetValue<string>("Username");
這happends如果密鑰 「用戶名」 是不是在字典。
我得到一個異常,無效的轉換:
以下錯誤內容時發生:
System.InvalidCastException:指定的轉換無效。
TryGetValue[T](Row row, String key, T defaultValue)
TryGetValue[T](Row row, String key)
所以我想TryGetValue
不處理字符串?
你可能使用T objValue = default(T);因爲你使用的是通用簽名。 – Pat 2010-05-28 15:23:53