C# ADO.NET的SqlDataReader对象,判断是否包含指定字段

在使用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 }

 

本人在网上搜索了很多方法,个人认为这个方法效率相较于其他方法比较理想,而且一目了然,比较好理解.当然,如果有更好的方法,欢迎大家在评论区分享出来.

posted @ 2018-11-08 11:16 梦中的Aoede 阅读(...) 评论(...) 编辑 收藏