Pergunta : conexão próxima do datareader

Eu estou usando leitores de alguns dados em meu Web site e por qualquer motivo quando eu entro há 2 linhas do sql que permanecem abertas e eu penso o seu por causa destes leitores dos dados que eu tenho.  pode alguém dizer-me se eu sou segurar esta direita?
do

SqlDataReader GetUserInformation (username da corda) {engodo do
SqlConnection = SqlConnection novo (GetConnectionString ()); Cmd do
SqlCommand = SqlCommand novo (“sp”, engodo);

cmd.CommandType = CommandType.StoredProcedure; cmd. Parameters.AddWithValue do
(“@UserName”, username); engodo do

. Abrir (); Dr. do

SqlDataReader = cmd.ExecuteReader (CommandBehavior. CloseConnection); Dr. do retorno do

;
do



LoadUserInformation do
do
do
} (username do string) {Dr. do
SqlDataReader = GetUserInformation (userName);

se (Dr. Lido ())
{
UserID = Convert.ToInt32 (Dr. [“UserID”] .ToString ());
FacilityID = Convert.ToInt32 (Dr. [“FacilityID”] .ToString ());
Admin = Convert.ToBoolean (Dr. [“Admin”] .ToString ()); Email do
= Dr. [“email”] .ToString (); Dr. do

do
do
}. Fim ();


}
class= do

Resposta : conexão próxima do datareader

Você não pode fechar a conexão da perspetiva do datareader. A conexão precisa de fechar-se no espaço do mesmo lugar onde foi aberta.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
    LoadUserInformation vago de estática público (username da corda)
    {
        Engodo de SqlConnection = SqlConnection novo (GetConnectionString ());
        Cmd de SqlCommand = SqlCommand novo (“sp”, engodo);

        cmd.CommandType = CommandType.StoredProcedure;
        cmd. Parameters.AddWithValue (“@UserName”, username);

        engodo. Abrir ();

        Dr. de SqlDataReader = cmd.ExecuteReader (CommandBehavior.CloseConnection);

        se (Dr. Lido ())
        {
            UserID = Convert.ToInt32 (Dr. [“UserID”] .ToString ());
            FacilityID = Convert.ToInt32 (Dr. [“FacilityID”] .ToString ());
            Admin = Convert.ToBoolean (Dr. [“Admin”] .ToString ());
            Email = Dr. [“email”] .ToString ();
        
        }

        Dr. Fim ();

        engodo. Fim ();
    }
Outras soluções  
 
programming4us programming4us