0
我在C#(.NET 4.0)中爲我的應用程序做了這個方法。 此方法將您作爲參數傳遞給的對象轉換爲類型T.我想分享它並詢問是否有更好的解決方案。以對象作爲參數的方法,它返回我想要的類型C#
public static T ReturnMeThis<T>(object variable) {
T dataOut = default(T);
try {
if(Convert.IsDBNull(variable) && typeof(T) == typeof(String))
dataOut = (T)(object)"";
else if(!Convert.IsDBNull(variable))
dataOut = (T)Convert.ChangeType(variable, typeof(T));
return dataOut;
}
catch(InvalidCastException castEx) {
System.Diagnostics.Debug.WriteLine("Invalid cast in ReturnMeThis<" + typeof(T).Name + ">(" + variable.GetType().Name + "): " + castEx.Message);
return dataOut;
}
catch(Exception ex) {
System.Diagnostics.Debug.WriteLine("Error in ReturnMeThis<" + typeof(T).Name + ">(" + variable.GetType().Name + "): " + ex.Message);
return dataOut;
}
}
事情是我所做的方法不能返回null。 – 2011-04-10 04:09:40