c#写扩展方法
转载
学习MVC时,学会了写扩展方法,用起来很方便。
01 | using System; |
02 | using System.Collections.Generic; |
03 | using System.Linq; |
04 | using System.Web; |
05 | using System.Web.Mvc; |
06 | using System.Text; |
08 | namespace MvcApp1.Content |
11 | public static class MyHtmlHelper |
13 | public static string RedLable( this HtmlHelper helper, string lbstr) |
15 | StringBuilder sb = new StringBuilder(); |
16 | sb.Append( "<span style=" color:red; ">" ); |
17 | sb.Append(lbstr); |
18 | sb.Append( "</span>" ); |
19 | return sb.ToString(); |
下面,用上面这个形式来写我的扩展方法
001 | using System; |
002 | using System.Collections.Generic; |
003 | using System.Text; |
005 | namespace Tools.Common |
007 | /// <summary> /// 数据优化公共类 |
008 | /// </summary> public static class DataHelper |
010 | #region 根据是否为null或""返回string类型数据 |
011 | /// <summary> /// 根据是否为null或""返回string类型数据 |
012 | /// </summary> /// <param name="obj">要获取数据的对象 |
013 | /// <param name="defaultValue">为null或""时返回的默认值,不指定则返回"" |
014 | /// <returns></returns> public static string IsNull(this object obj, params object[] defaultValue) |
016 | if (obj == null || "" .Equals(obj.ToString().Trim())) |
018 | if (defaultValue.Length == 0 || defaultValue[0]== null ) return "" ; |
019 | else return defaultValue[0].ToString() ; |
023 | return obj.ToString(); |
026 | #endregion |
028 | #region 根据是否为null或""返回long类型数据 |
029 | /// <summary> /// 根据是否为null或""返回long类型数据 |
030 | /// </summary> /// <param name="obj">要获取数据的对象 |
031 | /// <param name="defaultValue">为null或""时返回的默认值,不指定则返回long.MinValue |
032 | /// <returns></returns> public static long IsNull(this object obj, params long[] defaultValue) |
034 | if (obj == null || "" .Equals(obj.ToString().Trim())) |
036 | if (defaultValue.Length == 0) return long .MinValue; |
037 | else return defaultValue[0]; |
041 | return long .Parse(obj.ToString()); |
044 | #endregion |
046 | #region 根据是否为null或""返回int类型数据 |
047 | /// <summary> /// 根据是否为null或""返回int类型数据 |
048 | /// </summary> /// <param name="obj">要获取数据的对象 |
049 | /// <param name="defaultValue">为null或""时返回的默认值,不指定则返回int.MinValue |
050 | /// <returns></returns> public static int IsNull(this object obj, params int[] defaultValue) |
052 | if (obj == null || "" .Equals(obj.ToString().Trim())) |
054 | if (defaultValue.Length == 0) return int .MinValue; |
055 | else return defaultValue[0]; |
059 | return int .Parse(obj.ToString()); |
062 | #endregion |
064 | #region 根据是否为null或""返回DateTime类型数据 |
065 | /// <summary> /// 根据是否为null或""返回DateTime类型数据 |
066 | /// </summary> /// <param name="obj">要获取数据的对象 |
067 | /// <param name="defaultValue">为null或""时返回的默认值,不指定则返回DateTime.MinValue |
068 | /// <returns></returns> public static DateTime IsNull(this object obj, params DateTime[] defaultValue) |
070 | if (obj == null || "" .Equals(obj.ToString().Trim())) |
072 | if (defaultValue.Length == 0) return DateTime.MinValue; |
073 | else return defaultValue[0]; |
077 | return DateTime.Parse(obj.ToString()); |
080 | #endregion |
082 | #region 根据是否为null或""返回double类型数据 |
083 | /// <summary> /// 根据是否为null或""返回double类型数据 |
084 | /// </summary> /// <param name="obj">要获取数据的对象 |
085 | /// <param name="defaultValue">为null或""时返回的默认值,不指定则返回double.MinValue |
086 | /// <returns></returns> public static double IsNull(this object obj, params double[] defaultValue) |
088 | if (obj == null || "" .Equals(obj.ToString().Trim())) |
090 | if (defaultValue.Length == 0) return double .MinValue; |
091 | else return defaultValue[0]; |
095 | return double .Parse(obj.ToString()); |
098 | #endregion |
100 | #region 根据是否为null或""返回decimal类型数据 |
101 | /// <summary> /// 根据是否为null或""返回decimal类型数据 |
103 | /// </summary> /// <param name="obj">要获取数据的对象 |
104 | /// <param name="defaultValue">为null或""时返回的默认值,不指定则返回decimal.MinValue |
105 | /// <returns></returns> public static decimal IsNull(this object obj, params decimal[] defaultValue) |
107 | if (obj == null || "" .Equals(obj.ToString().Trim())) |
109 | if (defaultValue.Length == 0) return decimal .MinValue; |
110 | else return defaultValue[0]; |
114 | return decimal .Parse(obj.ToString()); |
117 | #endregion |
调用方法:
1 | long L = "12312321" .IsNull( long .MinValue); |
2 | Response.Write(L); |
结果:
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。