Você está aqui:
ASP.NET :::
ASP.NET Data Controls (Controles de Dados) ::: |
Definindo a string de conexão para o controle <asp:SqlDataSource> em tempo de execuçãoQuantidade de visualizações: 7805 vezes |
Em algumas situações queremos fornecer uma string de conexão dinâmica para o controle <asp:SqlDataSource>, ou seja, o valor para sua propriedade ConnectionString será fornecido em tempo de execução. Nesta dica eu mostro como isso pode ser feito. Comece colocando um controle <asp:SqlDataSource> e um botão <asp:Button> em uma página ASP.NET. Veja o código para o arquivo Default.aspx: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Debug="true" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server"> <title>Estudos ASP.NET</title> </head> <body> <form id="form1" runat="server"> <asp:Button ID="Button1" runat="server" Text="Exibir dados" onclick="Button1_Click" /><br /> <asp:SqlDataSource ID="SqlDataSource1" runat="server"> </asp:SqlDataSource> <asp:BulletedList id="BulletedList1" DataSourceID="SqlDataSource1" DataTextField="nome" Runat="server" /> </form> </body> </html> Aqui nós temos um controle <asp:SqlDataSource>, um botão <asp:Button> e uma lista <asp:BulletedList>. Ao clicarmos no botão, o controle SqlDataSource fará a conexão com a base de dados, disparará uma instrução SELECT em uma tabela clientes e os nomes retornados serão exibidos no controle <asp:BulletedList>. Veja o código para o arquivo de code-behind Default.aspx.cs: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { protected void Button1_Click(object sender, EventArgs e){ // vamos informar a string de conexão para o controle SqlDataSource SqlDataSource1.ConnectionString = "Data Source=NOTEBOOK; " + "Initial Catalog=estudos;Integrated Security=True"; // vamos definir o comando SQL a ser executado SqlDataSource1.SelectCommand = "SELECT nome FROM clientes"; } } Note que ao clicar no botão nós estamos fornecendo tanto o valor para a propriedade ConnectionString quanto para a propriedade SelectCommand. De posse destas informações o controle SqlDataSource obterá as informações e as exibirá no controle <asp:BulletedList>. Uma outra técnica interessante é ler a string de conexão a partir de uma caixa de texto <asp:TextBox>. Veja o novo código para Default.aspx: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Debug="true" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server"> <title>Estudos ASP.NET</title> </head> <body> <form id="form1" runat="server"> String de conexão:<br /> <asp:TextBox ID="TextBox1" Columns="30" runat="server"> </asp:TextBox><br /> <asp:Button ID="Button1" runat="server" Text="Exibir dados" onclick="Button1_Click" /><br /> <asp:SqlDataSource ID="SqlDataSource1" runat="server"> </asp:SqlDataSource> <asp:BulletedList id="BulletedList1" DataSourceID="SqlDataSource1" DataTextField="nome" Runat="server" /> </form> </body> </html> Veja que agora adicionamos um controle <asp:TextBox> no qual a string de conexão será informada. Agora, modifique o arquivo de code-behind Default.aspx.cs para a seguinte versão: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { protected void Button1_Click(object sender, EventArgs e){ // vamos obter a string de conexão para o controle SqlDataSource // a partir do controle TextBox1 SqlDataSource1.ConnectionString = TextBox1.Text; // vamos definir o comando SQL a ser executado SqlDataSource1.SelectCommand = "SELECT nome FROM clientes"; } } Execute a aplicação, informe a string de conexão e clique o botão "Exibir dados" para visualizar o resultado. Tenha o cuidado de verificar a existência de uma tabela clientes e que possua uma coluna chamada "nome" (ou faça as devidas alterações na instrução "SELECT nome FROM clientes". |
Link para compartilhar na Internet ou com seus amigos: |
Veja mais Dicas e truques de ASP.NET |
Dicas e truques de outras linguagens |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |