O documento discute conceitos básicos de ASP.NET, incluindo ligação a bases de dados, data binding, e controles como Repeater, DataList, GridView, e DetailsView. Explica como configurar strings de ligação, acessar configurações, e usar esses controles para exibir dados de forma tabular ou lista.
1. ASP .NET – Casos Práticos
Hélder Oliveira helderjmo@gmail.com
2. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• ConnectionString
• Acesso às configurações
• Ligação à Base de Dados
• DataBind
• Repeater
• Container.DataItem
• Databinder.Eval
• DataList
• GridView
• DetailsView
3. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• Deve ser definida no ficheiro app.config – característico em
aplicações web ASP .NET:
• Exemplo:
<connectionStrings>
<add name="defaultConnectionString"
connectionString="Data
Source=LOCALHOSTSQLEXPRESS;Initial
Catalog=dbtest;Integrated Security=True" />
</connectionStrings>
4. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• As configurações colocadas no ficheiro app.config podem ser
facilmente acedidas através do uso da classe
ConfigurationManager
• Útil para aceder às Connection Strings aí definidas:
ConfigurationManager.ConnectionStrings
["defaultConnectionString"]
.ConnectionString
5. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• É normalmente estabelecida com base numa
ConnectionString definida no ficheiro app.config
• Exemplo:
SqlConnection connection = new SqlConnection([...])
• Usa-se o método Open e Close antes e depois de aceder à
base de dados, respectivamente.
6. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• Este é um processo usado nalguns controlos para associar um
conjunto de dados em memória à visualização dos mesmos
num controlo.
• Todas as estruturas de memória que representem colecções
de dados são possíveis de usar num processo de DataBind:
– Exemplos:
• Todo o tipo de Arrays
• ArrayList
• HashTable
• DataSet ou DataTable
• Para visualização dos dados usando DataBind, os controlos
mais comuns são: Repeater, DataList, GridView e DetailsView
7. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• É o mais simples dos controlos para DataBinding de dados
• Util para casos simples de repetição de items
• Exemplo:
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate><b><%# Container.DataItem%></b><br /></ItemTemplate>
</asp:Repeater>
• A propriedade Container.DataItem permite o acesso
aos dados de cada item
• Associação de um simples array de strings ao mesmo
Repeater:
string[] lista = new string[]
{ "item1", "item2", "item3" };
Repeater1.DataSource = lista;
Repeater1.DataBind();
8. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• Container.DataItem é um alias em tempo real para cada item específico
presente na estrutura de dados associada ao controlo. O tipo de dados
devolvido por esta propriedade é determinado pelo tipo de estrutura
associada como fonte de dados (DataSource). Exemplos:
• Como se pode observar, cada tipo de fonte de dados exige uma forma
diferente de especificar o alias para o item dos dados a visualizar. A fim de
evitar esta “preocupação”, poderá ser usado o método Databinder.Eval.
Fonte de dados Código
Array de Strings <%# Container.DataItem %>
DataTable <%# ((DataRow)Container.DataItem)*“coluna"+
DataView <%# ((DataRowView)Container.DataItem)*“coluna"+
Colecção de
elementos
<%# ((Tipo de dados)Container.DataItem).Propriedade %>
9. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• Permite associar cada elemento proveniente da fonte de
dados ao objecto de visualização com uma análise prévia do
tipo de dados. Exemplo:
DataBinder.Eval(Container.DataItem,
“nome_do_campo")
• A expressão anterior pode ainda ser mais simplificada por:
Eval(“nome_do_campo")
10. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• Permite a apresentação dos dados em forma de lista
• Permite funcionalidades como Paging e Sorting
• Exemplo:
<asp:DataList ID="dlUtilizadores" runat="server">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server"
CommandArgument='<%# DataBinder.Eval(Container.DataItem,
"id_utilizador")%>' OnCommand="LinkButton1_Command"><%#
DataBinder.Eval(Container.DataItem,
"username")%></asp:LinkButton>
</ItemTemplate>
</asp:DataList>
11. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• Código de inicialização:
SqlDataAdapter da = new
SqlDataAdapter("SELECT * FROM
utilizadores", connection);
DataSet dt = new DataSet();
da.Fill(dt);
dList.DataKeyField = "id_utilizador";
dList.DataSource = dt;
dList.DataBind();
12. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• Permite a visualização dos dados em forma de tabela
• Ideal para apresentar e editar listas de dados com mais do
que um campo (DataTable’s)
• Permite operações de Edição, Remoção e Selecção de linhas
(Rows) sem especificar uma unica linha de código (ao
contrário da DataGrid, sua antecessora)
13. Hélder Oliveira helderjmo@gmail.com ASP .NET – Conceitos Básicos
• É também um novo controlo na versão 2.0 da .NET framework
• Util para gestão registo a registo, sobretudo quando se considera
um número elevado de campos
• Permite operações de alteração, remoção ou de adição de dados
• FormView é um controlo que, à semelhança com o DetailsView,
permite mostrar os dados registo a registo, mas, neste caso,
permite criar um modelo personalizado para visualização dos dados