自從上次一篇博客已經有兩個月了,由於一些事耽擱了 - (出發前說說個人我的感想)。html
到上海以後參加了不少面試,無論從技術上仍是項目經驗都遭遇到了一些打擊,因此決心打造屬於本身的框架做品。面試
雖然我仍是一個菜鳥,不過我相信只要堅持就會實現個人目標。框架
今天的內容會很簡單,只是想在博客上作一個簡單的記錄。post
此擴展方法只是方便把對象轉化爲指定的值類型,若是轉化失敗,就返回要轉化的值類型的默認值。ui
但願園友們可以多多提出大家的意見,謝謝啦!this
代碼以下:url
1 using System; 2 3 namespace YCG.FCL.Common.ExtensionMethods 4 { 5 public static class ValueTypeExtension 6 { 7 public static bool ToBool(this object value) 8 { 9 bool result = default(bool); 10 if (value.IsNotNull()) 11 { 12 bool.TryParse(value.ToString(), out result); 13 } 14 return result; 15 } 16 17 public static byte[] ToBytes(this object value) 18 { 19 try 20 { 21 return (byte[])value; 22 } 23 catch (InvalidCastException castException) 24 { 25 throw castException; 26 } 27 } 28 29 public static bool IsNotNull(this object value) 30 { 31 return value != null && value != DBNull.Value; 32 } 33 34 public static Int16 ToInt16(this object value) 35 { 36 Int16 result = default(Int16); 37 if (value.IsNotNull()) 38 { 39 Int16.TryParse(value.ToString(), out result); 40 } 41 return result; 42 } 43 44 public static Int32 ToInt32(this object value) 45 { 46 Int32 result = default(Int32); 47 if (value.IsNotNull()) 48 { 49 Int32.TryParse(value.ToString(), out result); 50 } 51 return result; 52 } 53 54 public static Int64 ToInt64(this object value) 55 { 56 Int64 result = default(Int64); 57 if (value.IsNotNull()) 58 { 59 Int64.TryParse(value.ToString(), out result); 60 } 61 return result; 62 } 63 64 public static float ToFloat(this object value) 65 { 66 float result = default(float); 67 if (value.IsNotNull()) 68 { 69 float.TryParse(value.ToString(), out result); 70 } 71 return result; 72 } 73 74 public static double ToDouble(this object value) 75 { 76 double result = default(double); 77 if (value.IsNotNull()) 78 { 79 double.TryParse(value.ToString(), out result); 80 } 81 return result; 82 } 83 84 public static decimal ToDecimal(this object value) 85 { 86 decimal result = default(decimal); 87 if (value.IsNotNull()) 88 { 89 decimal.TryParse(value.ToString(), out result); 90 } 91 return result; 92 } 93 94 public static DateTime ToDateTime(this object value) 95 { 96 DateTime result = default(DateTime); 97 if (value.IsNotNull()) 98 { 99 DateTime.TryParse(value.ToString(), out result); 100 } 101 return result; 102 } 103 } 104 }
我會持續的記錄我的類庫誕生的過程。spa
以同步至:我的文章目錄索引code