我有這樣的代碼:存在System.ArgumentException異常的捕獲塊,但是異常無法捕獲,爲什麼?
if (typeof(Enum).IsAssignableFrom(typeof(T)))
{
try
{
return (T)Enum.Parse(typeof(T), text);
}
catch (ArgumentException e)
{
return default(T);
}
}
但是我接收到以下情況例外:
類型「System.ArgumentException」的第一次機會異常出現在mscorlib.dll 其他信息:請求的值「ABC '找不到
這怎麼可能?爲什麼catch
塊無法使用?
這樣的代碼'T result = default(T); Enum.TryParse(text,out result);'不起作用,因爲類型T必須是不可空的 – javapowered 2012-01-27 06:46:03