从DataReaderI 返回数据时,通常会使用序号引用DataReader来获取相关列:
if (dr.HasRows)
Console.WriteLine(dr[0].ToString());
Run Code Online (Sandbox Code Playgroud)
要么
if (dr.HasRows)
Console.WriteLine(dr.GetString(0));
Run Code Online (Sandbox Code Playgroud)
要么
if (dr.HasRows)
Console.WriteLine((string)dr[0]);
Run Code Online (Sandbox Code Playgroud)
我一直这样做是因为我在早期阶段被告知使用dr["ColumnName"]或更优雅的索引方式会导致性能下降.
然而,尽管对数据实体的所有引用都变得越来越强烈,但我对此感到更加不安.我也知道上面没有检查DBNull.
从数据库中返回数据最有效的方法是DataReader什么?