Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Cega86

Como ler registros de um DataTable

Recommended Posts

Bom dia estou com o seguinte problema:Tenho storeprocedure que pode retornar 1 ou mais valores(nome dos grupos de acesso de um determinado usuário),criei um metodo que joga o resultado dessa storeprocedure dentro de um DataTable.Minha dúvida é o seguinte como posso ler os nomes q estão dentro do DataTable e joga-los dentro de uma String separado-os por virgula.

 

 

método que faz a consulta no banco

 

public DataTable busca_grupos_usuario(string email)
	{
		SqlDataAdapter da = new SqlDataAdapter("carrega_grupo", ConfigurationManager.ConnectionStrings["projetos"].ConnectionString);
		da.SelectCommand.CommandType = CommandType.StoredProcedure;
		DataTable dt = new DataTable();
		da.Fill(dt);
		return dt;
}

 

método de autenticação

 

protected void LoginOk(String nome)
	{
		string userData = "grupos";
		DataTable dt = new DataTable();
		dt = dao.busca_grupos_usuario(TextBoxEmail.Text.ToLower());
		for (int i = 0; i <= dt.DefaultView.Count-1; i++)
		{
		   userData += dt.Rows[i].ToString().Split(',');
		}
		FormsAuthentication.Initialize();
		FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,nome,DateTime.Now,DateTime.Now.AddMinutes(60),true,userData,FormsAuthentication.FormsCookiePath);
		string hash = FormsAuthentication.Encrypt(ticket);
		HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, hash);
		Response.Cookies.Add(cookie);					   
	}

Alguem pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza entendi,mas seu estiver lendo de um DataReder tem como eu pegar o count de um DataReder? e depois como separo por virgulas dentro de uma variável string?

o código que eu estou usando só ta pegando o primeiro registro do DataReder.

 

meu codigo ta assim:

SqlConnection conexao = new SqlConnection(ConfigurationManager.ConnectionStrings["projetos"].ConnectionString);
		SqlCommand MySqlCommand = new SqlCommand("buscar_grupos_usuario", conexao);
		SqlDataReader dr = null;
		string grupo = null;
		MySqlCommand.CommandType = CommandType.StoredProcedure;
		MySqlCommand.Parameters.AddWithValue("@email", email);
		conexao.Open();
		dr = MySqlCommand.ExecuteReader(CommandBehavior.SingleRow);
		if (dr.HasRows)
		{
			for (int i = 0; i <= dr.FieldCount; i++)
			{			   
			  dr.Read();
			  grupo += dr[i].ToString();
			} 
			  dr.Close();
			  conexao.Close();			   
			  return grupo;
		}
		else
		{		  
			dr.Close();
			conexao.Close();
			grupo = "nenhum";
			return grupo;
		}  
	}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.