请教一个 SqlConnection 的问题;
我的代码如: 
 using   (SqlConnection   myConnection   =   new   SqlConnection( "context   connection=true "))   
 然后 
 { 
 SqlDataReader   dr_1   =   GetCommonStartPrefix(TableName,   colName,   sb,   myConnection);   
 while   (dr_2.Read()) 
 { 
                         //我想在这里获取一个SqlDataReader怎么处理?   
 }   
------解决方案--------------------不明白意思 
 while (dr_2.Read()) 
 { 
         //我想在这里获取一个SqlDataReader怎么处理?   
 }   
 这里你不是已经取到了SqlDataReader了吗
------解决方案--------------------while (dr_2.Read()) 
 { 
 xx=dr_2[ "字段名字 "].ToString()   
 }
------解决方案--------------------一样的啊 
 把如下的代码放 while 里就是了 
 SqlCommand newCommand = new SqlCommand( "sql... ", myConnection) 
 SqlDataReader myReader = newCommand.ExecuteReader()
------解决方案--------------------如果我要把之前的datareader不colse掉怎么处理呢? 
 没有关系的 
 using 中这个花括号执行完会自动释放这个CONNECTION资源   
 第2个con 你完全可以不用USING来写 
 如果用的话也可以,嵌个套   
 using () 
 {   
          using () 
          { 
          }   
 }
------解决方案--------------------SqlConnection myConnection = new SqlConnection( "context connection=true "); 
 SqlConnection myConnection1 = new SqlConnection( "context connection=true "); 
 myConnection1.Open(); 
 myConnection.Open(); 
 ....... 
 SqlDataReader dr_2 = GetCommonStartPrefix(TableName, colName, sb, myConnection); 
 SqlDataReader dr_1; 
 while (dr_2.Read()) 
 { 
 dr_1 = GetCommonStartPrefix(TableName, colName, sb, myConnection1 ); 
 //dr_1操作 
 dr_1.Close(); 
 } 
 myConnection1.Dispose(); 
 myConnection.Dispose(); 
------解决方案--------------------datareader 是保持连接的  
 除非这个释放了  
 除非不能用同一个 Connection 吧
------解决方案--------------------用一个 connection 就是了 
 为什么要用两个 
 connection 如同道路 
 一条就够了 
 你可以在上面通过不同汽车(SqlCommand)运送不同的货物(执行Sql)
------解决方案--------------------出错是由于你使用有问题 
 正确过程   
 string cnString =  "Persist Security Info=False;User ID=sa;Password=;Initial Catalog=pubs;Server=.; "; 
 SqlConnection cn = new SqlConnection(cnString); 
 SqlConnection cn1 = new SqlConnection(cnString); 
 cn.Open(); 
 cn1.Open(); 
 SqlCommand cmd = new SqlCommand( "select * from authors ", cn); 
 SqlCommand cmd1; 
 SqlDataReader dr = cmd.ExecuteReader(); 
 SqlDataReader dr1; 
 while (dr.Read()) 
 { 
   cmd1 = new SqlCommand( "select * from titles ", cn1); 
   dr1 = cmd1.ExecuteReader(); 
   Response.Write(dr1.HasRows); 
   dr1.Close(); 
 } 
 dr.Close(); 
 cn.Close(); 
 cn1.Close();
------解决方案--------------------You need to use try/catch blocks to make sure your connection,datareader and command are disposed/closed when an exception is thrown