在使用ado.net的SqlDataReader对象时,如果SqlDataReader实例对象中没有对应的字段,则会在那一行报错.而SqlDataReader类又没有判断是否存在指定字段的方法,怎么办呢?
我们只好自己写个判断是否包含指定字段的方法了...
上代码:
1 /// <summary> 2 /// SqlDataReader对象是否包含此字段 3 /// </summary> 4 /// <param name="dataReader">SqlDataReader实例对象</param> 5 /// <param name="columnName">字段名称</param> 6 /// <returns></returns> 7 private static bool readerExists(SqlDataReader dataReader, string columnName) 8 { 9 for (int i = 0; i < dataReader.FieldCount; i++) 10 { 11 if (dataReader.GetName(i).Equals(columnName)) 12 { 13 return true; 14 }; 15 } 16 return false; 17 }
本人在网上搜索了很多方法,个人认为这个方法效率相较于其他方法比较理想,而且一目了然,比较好理解.当然,如果有更好的方法,欢迎大家在评论区分享出来.
更多内容可访问我的博客:http://www.yunc.top/