当前位置: 首页 > news >正文

php网站开发实训报告书怎么做兼职类网站吗

php网站开发实训报告书,怎么做兼职类网站吗,衡阳网站优化方案,门户媒体有哪些在使用DataRow读取数据时#xff0c;通常会遇到数据可能为Null, 但是又需要转换为如int等其它类型的数据#xff0c;因此就通常会写这样的代码#xff1a; if (dr[name] ! DBNull.Value dr[name] ! null){ if (!int.TryParse(dr[name].ToString(), out result… 在使用DataRow读取数据时通常会遇到数据可能为Null, 但是又需要转换为如int等其它类型的数据因此就通常会写这样的代码 if (dr[name] ! DBNull.Value dr[name] ! null){    if (!int.TryParse(dr[name].ToString(), out result))        throw new Exception(整形转换失败);} 而且这样的代码通常会大段大段出现在很多地方。对于比较懒惰的程序员来说这样的RY(repeat yourself)是一件很痛苦的事情因此是时候来想个更好的方法了。这里首先想到的就是Extension Method。 很简单的几句代码有了这个方法之后在使用DataRow时就可以通过扩展方法读取数据了 model.Id   dr.SafeReadInt32(Id,0);model.codeNum dr.GetString(codeNum); 简单但是实用的代码希望对大家在项目中有所帮助。 这里参考了,一下两篇文章并进行了代码重新组织最后是整理后类源码 使用 Extension Methods 来使 IDataReader 更加方便 C#底层SqlDataReader类常用扩展 public static class SystemDataExtension{#region DataReader 扩展public static T SafeReadT(this IDataReader reader, string fieldName, T defaultValue){try{object obj reader[fieldName];if (obj null || obj System.DBNull.Value)return defaultValue;return (T)Convert.ChangeType(obj, defaultValue.GetType());}catch{return defaultValue;}}/// summary /// 获取字符串类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static string GetString(this IDataReader dr, string name){if (dr[name] ! DBNull.Value dr[name] ! null)return dr[name].ToString();return String.Empty;}/// summary /// 获取非空类型数据 /// /summary /// param namecon/param/// param namename/param/// returns/returns public static DateTime GetDateTime(this IDataReader dr, string name){DateTime result DateTime.Now;if (dr[name] ! DBNull.Value dr[name] ! null){if (!DateTime.TryParse(dr[name].ToString(), out result))throw new Exception(日期格式数据转换失败);}return result;}/// summary /// 获取可空类型日期数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static DateTime? GetNullDateTime(this IDataReader dr, string name){DateTime? result null;DateTime time DateTime.Now;if (dr[name] ! DBNull.Value dr[name] ! null){if (!DateTime.TryParse(dr[name].ToString(), out time))throw new Exception(日期格式数据转换失败);result time;}return result;}/// summary /// 获取guid类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static Guid GetGuid(this IDataReader dr, string name){Guid guid Guid.Empty;if (dr[name] ! DBNull.Value dr[name] ! null){if (Guid.TryParse(dr[name].ToString(), out guid))throw new Exception(guid类型数据转换失败);}return guid;}/// summary /// 获取整形数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static int GetInt32(this IDataReader dr, string name){int result 0;if (dr[name] ! DBNull.Value dr[name] ! null){if (!int.TryParse(dr[name].ToString(), out result))throw new Exception(整形转换失败);}return result;}/// summary /// 获取双精度类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static double GetDouble(this IDataReader dr, string name){double result 0.00;if (dr[name] ! DBNull.Value dr[name] ! null){if (!double.TryParse(dr[name].ToString(), out result))throw new Exception(双精度类型转换失败);}return result;}/// summary /// 获取单精度类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static float GetSingle(this IDataReader dr, string name){float result 0.00f;if (dr[name] ! DBNull.Value dr[name] ! null){if (!float.TryParse(dr[name].ToString(), out result))throw new Exception(单精度类型转换失败);}return result;}/// summary /// 获取decimal类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static decimal GetDecimal(this IDataReader dr, string name){decimal result 0.00m;if (dr[name] ! DBNull.Value dr[name] ! null){if (!decimal.TryParse(dr[name].ToString(), out result))throw new Exception(Decimal类型转换失败);}return result;}/// summary /// 获取int16类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static Int16 GetInt16(this IDataReader dr, string name){short result 0;if (dr[name] ! DBNull.Value dr[name] ! null){if (!short.TryParse(dr[name].ToString(), out result))throw new Exception(短整形转换失败);}return result;}/// summary /// 获取Byte类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static byte GetByte(this IDataReader dr, string name){byte result 0;if (dr[name] ! DBNull.Value dr[name] ! null){if (!byte.TryParse(dr[name].ToString(), out result))throw new Exception(Byte类型转换失败);}return result;}/// summary /// 获取bool类型数据如果传值是1或者是返回true; /// /summary /// param namecon/param /// param namename/param /// returns/returns public static bool GetBool(this IDataReader dr, string name){if (dr[name] ! DBNull.Value dr[name] ! null){return dr[name].ToString() 1 || dr[name].ToString() 是 || dr[name].ToString().ToLower() true;}return false;} #endregion#region DataRow 扩展public static T SafeReadT(this DataRow dr, string fieldName, T defaultValue){try{object obj dr[fieldName];if (obj null || obj System.DBNull.Value)return defaultValue;return (T)Convert.ChangeType(obj, defaultValue.GetType());}catch{return defaultValue;}}/// summary /// 获取字符串类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static string GetString(this DataRow dr, string name){if (dr[name] ! DBNull.Value dr[name] ! null)return dr[name].ToString();return String.Empty;}/// summary /// 获取非空类型数据 /// /summary /// param namecon/param/// param namename/param/// returns/returns public static DateTime GetDateTime(this DataRow dr, string name){DateTime result DateTime.Now;if (dr[name] ! DBNull.Value dr[name] ! null){if (!DateTime.TryParse(dr[name].ToString(), out result))throw new Exception(日期格式数据转换失败);}return result;}/// summary /// 获取可空类型日期数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static DateTime? GetNullDateTime(this DataRow dr, string name){DateTime? result null;DateTime time DateTime.Now;if (dr[name] ! DBNull.Value dr[name] ! null){if (!DateTime.TryParse(dr[name].ToString(), out time))throw new Exception(日期格式数据转换失败);result time;}return result;}/// summary /// 获取guid类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static Guid GetGuid(this DataRow dr, string name){Guid guid Guid.Empty;if (dr[name] ! DBNull.Value dr[name] ! null){if (Guid.TryParse(dr[name].ToString(), out guid))throw new Exception(guid类型数据转换失败);}return guid;}/// summary /// 获取整形数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static int GetInt32(this DataRow dr, string name){int result 0;if (dr[name] ! DBNull.Value dr[name] ! null){if (!int.TryParse(dr[name].ToString(), out result))throw new Exception(整形转换失败);}return result;}/// summary /// 获取双精度类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static double GetDouble(this DataRow dr, string name){double result 0.00;if (dr[name] ! DBNull.Value dr[name] ! null){if (!double.TryParse(dr[name].ToString(), out result))throw new Exception(双精度类型转换失败);}return result;}/// summary /// 获取单精度类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static float GetSingle(this DataRow dr, string name){float result 0.00f;if (dr[name] ! DBNull.Value dr[name] ! null){if (!float.TryParse(dr[name].ToString(), out result))throw new Exception(单精度类型转换失败);}return result;}/// summary /// 获取decimal类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static decimal GetDecimal(this DataRow dr, string name){decimal result 0.00m;if (dr[name] ! DBNull.Value dr[name] ! null){if (!decimal.TryParse(dr[name].ToString(), out result))throw new Exception(Decimal类型转换失败);}return result;}/// summary /// 获取int16类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static Int16 GetInt16(this DataRow dr, string name){short result 0;if (dr[name] ! DBNull.Value dr[name] ! null){if (!short.TryParse(dr[name].ToString(), out result))throw new Exception(短整形转换失败);}return result;}/// summary /// 获取Byte类型数据 /// /summary /// param namedr/param /// param namename/param /// returns/returns public static byte GetByte(this DataRow dr, string name){byte result 0;if (dr[name] ! DBNull.Value dr[name] ! null){if (!byte.TryParse(dr[name].ToString(), out result))throw new Exception(Byte类型转换失败);}return result;}/// summary /// 获取bool类型数据如果传值是1或者是返回true; /// /summary /// param namecon/param /// param namename/param /// returns/returns public static bool GetBool(this DataRow dr, string name){if (dr[name] ! DBNull.Value dr[name] ! null){return dr[name].ToString() 1 || dr[name].ToString() 是 || dr[name].ToString().ToLower() true;}return false;}#endregion}转载于:https://www.cnblogs.com/IlidanStormRage/p/5737062.html
http://www.pierceye.com/news/879269/

相关文章:

  • 做h的动漫在线观看网站安阳市有几个区几个县
  • 帝国cms地方门户网站模板怀集县住房和城乡规划建设网站
  • 河北住房建设厅网站首页怎么自己建设网站
  • 政务网站建设及安全下载app赚钱的平台
  • 如何制作一个论坛网站都江堰建设局网站
  • 网站建设seo优化浙江广17网站一起做网店
  • WordPress子站站群优化教程网站推广排名
  • 毕设做购物网站容易吗网上商城是什么意思
  • 1688阿里巴巴官方网站杭州网站建设seo
  • 建设网站选什么地方的主机网站上漂亮的甘特图是怎么做的
  • 用什么软件来建网站立创电子元器件商城官网
  • 做视频网站成本如何定制微信小程序
  • 南宁市有哪些做网站的外包企业青州网站建设公司
  • 网站排名点击中国建筑是国企还是央企
  • 广告联盟的网站怎么做太仓苏州网站建设
  • 杭州 seo网站建设 网络服务包头企业网站
  • 网站导航字体企业网站建设及维护
  • 买东西网站产品设计网张
  • 国外有哪些设计网站嵌入式软件开发工具有哪些
  • 做网站推广的销售电话开场白wordpress小工具插件
  • 简单网站建设公司flashfxp上传wordpress
  • 网站建设策划包括哪些内容展馆设计图
  • 网站建设中 翻译六安市 网站集约化建设
  • 全国卫生机构建设管理系统网站公司网站维护费用计哪个科目
  • 学做川菜最好的网站商标综合查询
  • 网站开发培训 价格哪些网站可以找到兼职做报表的
  • 网站建设功能分为几种北京自考网址
  • 购买网站域名怎么做会计分录广告机免费投放
  • 网上做网站赚钱深圳市无限空间工业设计有限公司
  • 商贸网站建设怎么查看wordpress版本