Tecnologias Web
Principais serviços oferecidos pela Internet
Serviço Protocolos
World Wide Web HTTP / HTTPS / SOAP
Correio Eletrônico SMTP / POP / IMAP
Troca de Arquivos FTP / SFTP / FTPS
Mensagem Instantânea Sockets
Tecnologias Web
O que é uma aplicação Internet?
Uma aplicação Internet é qualquer aplicação que usa a Internet para acesso a
informações e transferência de dados.
Aplicações Web são um dos quatro tipos de aplicações Internet que podemos criar, a seguir temos um overview desses tipos.
Tecnologias Web
Tipos de aplicações Internet
Aplicações Web: estas aplicações fornecem conteúdo de um servidor para os computadores clientes através da Internet;
Web Services: estes componentes proporcionam o processamento de dados em um servidor Web para outras aplicações através da Internet;
Aplicações Conectadas: estas são aplicações stand-alone que incorporam aspectos da Internet para proporcionar ao usuário atualizações, ajuda ou outros serviços online;
Aplicações ponto-a-ponto: estas são aplicações stand-alone que usam a Internet para se comunicar com outros usuários executando sua instância da aplicação.
Tecnologias Web
Como funcionam aplicações Web? Aplicações Web usam a arquitetura cliente/servidor. As aplicações
residem em um servidor e respondem requisições de múltiplos clientes, como mostra a figura:
Tecnologias Web
Como funcionam aplicações Web?
Cliente A aplicação Web é hospedada por um browser; A interface da aplicação assume a forma de páginas HTML
que são interpretadas e exibidas pelo browser do cliente;
Servidor A aplicação Web roda sob um servidor de aplicações Web
como o Microsoft Internet Information Services (IIS); O servidor de aplicações Web passa as requisições dos
clientes para as aplicações e encaminha as respostas das aplicações para os clientes.
Tecnologias Web
Como funcionam aplicações Web?
Tecnologias Web
HTTPHyperText Transfer Protocol
“Protocolo de aplicação que possui um conjunto de regras definidas para comunicação entre
servidores e navegadores Web”
Tecnologias Web
A plataforma Web
Tecnologias Web
HTMLHypertext Markup Language
A HTML é uma linguagem de marcação cujo objetivo original era descrever a estrutura de documentos para Web e não a formatação
O que se pretendia era somente descrever os elementos que compõem uma página e não o modo como uma página se apresenta
As extensões aos elementos originais do HTML (<font>, <color>, etc) permitem que se ultrapasse o propósito inicial da linguagem
A HTML possui um conjunto definido de elementos e não podemos criar nossos próprios elementos
Tecnologias Web
Plataforma .NET
Base Class Library
Common Language Specification
Common Language Runtime
Data and XML
VB C++ C#
Visu
al Stu
dio
.NE
T
ASP.NET
JScript …
Windows Forms
Tecnologias Web
O que é o ASP.NET?
ASP.NET é a plataforma usada para criar aplicações Web e serviços Web que rodam abaixo do IIS
ASP.NET não é a única tecnologia usada para criar aplicações Web, outras tecnologias também são usadas, tais como JSP, PHP, CGI e Perl
O que torna o ASP.NET especial é a sua integração com a plataforma Microsoft
Tecnologias Web
Elementos chaves para programação ASP.NET
Microsoft Internet Information Services (IIS) .NET Framework
Linguagens de programação Microsoft Visual Basic .NET Microsoft Visual C# Microsoft Visual J#
Microsoft ADO.NET
Tecnologias Web
Partes de uma Aplicação ASP.NET
Parte Tipos de arquivos Descrição
Conteúdo Web forms, HTML, imagens, áudio, vídeo e outros
Arquivos de conteúdo determinam a aparência de uma aplicação Web. Eles podem conter textos estáticos e imagens assim como elementos que são criados durante a execução da aplicação pelo programa lógico.
Programa lógico Arquivos executáveis e scripts
O programa lógico determina como a aplicação responde às ações do usuário. Aplicações ASP.NET possuem uma dynamic-link library (DLL) que roda no servidor e também podem incluir scripts que rodam na máquina cliente
Configuração Arquivo de configuração Web, folhas de estilo e configurações do IIS
Os arquivos de configuração determinam como a aplicação roda no servidor, quem tem acesso, como os erros são tratados e outros detalhes.
Tecnologias Web
Web Form
O Web form é o elemento chave de uma aplicação Web
Um Web form é o cruzamento entre uma página HTML e um Windows form
Um Web form tem a mesma aparência e comportamento similar à uma página HTML, mas ele também tem controles que respondem a eventos e rodam código como um Windows form
Tecnologias Web
Componentes do Web Form
Componente Exemplos Descrição
Server controls TextBox, Label, Button, ListBox, DropDownList
Estes controles respondem a eventos do usuário rodando procedures no servidor. Server controls podem manter seu estado.
HTML controls TextArea, Table, Image, Submit Button, Reset Button
Representam os elementos padrões HTML. HTML controls são usados quando não é necessário o conjunto completo de características dos server controls.
Data controls SqlConnection, SqlCommand, OleDbConnection, OleDbCommand, DataSet
Data controls oferecem maneiras para se conectar, executar comandos e recuperar dados de BDs e arquivos XML
System components
FileSystemWatcher, EventLog, MessageQueue
Estes componentes oferecem acesso à vários eventos de sistema que ocorrem no servidor
Tecnologias Web
Tempo de Vida de um Web Form
Windows forms são instanciados, permanecem na memória o tempo que for necessário e são destruídos
Web forms parecem se comportar da mesma forma, mas eles são instanciados, enviados para o browser e, em seguida, destruídos
Isso significa que todas as variáveis e objetos declarados em um Web form não estão disponíveis após ele ser exibido
Tecnologias Web
Eventos no ciclo de vida de uma aplicação Web
Uma aplicação Web vive enquanto existirem sessões de usuários ativas, já os Web forms vivem por instantes
A vida de uma aplicação Web começa quando um browser requisita a página inicial da aplicação. Nesse momento o servidor Web entra em ação, inicializando o assembly (dll) que responde a requisição
O assembly cria uma instância do Web form requisitado, gera o HTML para responder à requisição, envia a resposta ao browser e finalmente destrói a instância do Web form
Tecnologias Web
Eventos no ciclo de vida de uma aplicação Web
Tecnologias Web
Eventos no ciclo de vida de uma aplicação Web
Tecnologias Web
Preservando dados de um Web Form
Devido ao fato dos Web forms terem um ciclo de vida muito curto, o ASP.NET executa passos especiais para preservar os dados inseridos nos controles de um Web form
Os dados inseridos nos controles são enviados a cada requisição e restaurados nos controles no evento Page_Init
Tecnologias Web
Preservando dados de um Web Form
Tecnologias Web
Preservando dados de um Web Form
Os dados preservados entre requisições são chamados de view state do Web form
Por padrão, o view state do Web form fica disponível somente para o mesmo Web form
Para disponibilizar os dados inseridos em um Web form para outros Web forms em uma aplicação, precisamos salvar os dados em variáveis de estado nos objetos Application ou Session Variáveis Application: ficam disponíveis para todos usuários de
uma aplicação Variáveis Session: ficam disponíveis somente para uma sessão
Tecnologias Web
Eventos dos Server Controls
Server controls, tais como Button, TextBox e DropDownList, têm seus próprios conjuntos de eventos que ocorrem em resposta às ações do usuário
Tipos de eventos para server controls: Postback Events: estes eventos causam o envio da
página Web de volta ao servidor para processamento imediato
Cached Events: estes eventos são salvos no view state do Web form para serem processados quando ocorrer um postback
Tecnologias Web
Eventos dos Server Controls
Tecnologias Web
Eventos dos Server Controls
Os controles Button, Link Button e Image Button causam postback events
Os controles TextBox, DropDownList, ListBox, RadioButton e CheckBox causam cached events, embora seja possível mudar esse comportamento mudando a propriedade AutoPostBack para True
O que é o ADO.NET?
O ADO.NET permite interagir com bancos de dados relacionais e outras fontes de dados
O ADO.NET é a tecnologia que as aplicações ASP.NET usam para se comunicar com bancos de dados, caso precisem adicionar, atualizar, apagar ou recuperar registros
O ADO.NET possui uma família de objetos que provêm todas essas funcionalidades
Data Providers
A Microsoft oferece os quatro providers abaixo:
SQL Server provider: oferece acesso otimizado ao banco de dados SQL Server (versão 7.0 ou superior)
OLE DB provider: oferece acesso à qualquer fonte de dados que tenha um driver OLE DB
Oracle provider: oferece acesso otimizado ao banco de dados Oracle (versão 8i ou superior)
ODBC provider: oferece acesso à qualquer fonte de dados que tenha um driver ODBC
Os objetos dos ADO.NET Data Providers
SQL Server Provider
OLE DB Provider
Oracle Provider
ODBC Provider
Connection SqlConnection OleDbConnection OracleConnection OdbcConnection
Command SqlCommand OleDbCommand OracleCommand OdbcCommand
DataReader SqlDataReader OleDbDataReader OracleDataReader OdbcDataReader
DataAdapter SqlDataAdapter OleDbDataAdapter OracleDataAdapter OdbcDataAdapter
Objetos do SQL Server Data Provider SqlConnection
Antes de recuperar ou atualizar dados, é necessário criar uma conexão com a fonte de dados
Quando se cria um objeto Connection, é necessário definir um valor para sua propriedade ConnectionString
A string de conexão para um objeto SqlConnection é bastante similar ao exemplo abaixo: myConnection.ConnectionString = “Data Source=localhost; Initial
Catalog=Pubs; Integrated Security=SSPI”; Data Source: indica o nome do servidor onde a fonte de dados está
localizada Initial Catalog: é o nome do banco de dados que a conexão acessará Integrated Security: indica que será usado o usuário do Windows com o qual
roda a aplicação Web para se conectar ao SQL Server
Objetos do SQL Server Data Provider SqlCommand
Objetos Command representam comandos SQL Para usar um Command, é necessário definir as propriedades CommandText e
Connection
SqlDataReader Permite recuperar informações do banco de dados Suporta acesso forward-only e read-only Deve ser a primeira escolha para acessos somente leitura, devido à sua natureza
otimizada para esse tipo de acesso
SqlDataAdapter Usado no modelo de acesso à dados desconectado Pode armazenar os quatro comandos básicos SQL em suas propriedades:
SelectCommand, InsertCommand, UpdateCommand e DeleteCommand Dessa maneira, um único DataAdapter é usado para múltiplas tarefas
DataSet
É um “banco de dados relacional na memória” É um dos principais objetos do modelo de acesso à
dados desconectado Suas características inovadoras são:
Trabalha de forma desconectada Pode armazenar mais de uma tabela Pode manter relacionamentos entre tabelas
Pode-se manter a conexão com o bando de dados fechada, pois o DataSet permite que se tenha uma cópia do banco de dados na memória
DataSet
Acesso direto ou conectado
Acesso desconectado
Principais classes do ADO.NET
Classe Connection Propriedades
ConnectionString State
Métodos BeginTransaction( ) Close( ) Open( )
Classe Command Propriedades
CommandText CommandType Connection Parameters Transaction
Métodos ExecuteNonQuery( ) ExecuteReader( ) ExecuteScalar( )
Principais classes do ADO.NET
Classe DataReader Propriedades
FieldCount HasRows Item IsClosed
Métodos Close( ) Read( )
Classe DataAdapter Propriedades
DeleteCommand InsertCommand SelectCommand UpdateCommand
Métodos Fill( ) Update( )
Principais classes do ADO.NET Classe DataSet
Propriedades Relations Tables
Métodos AcceptChanges( ) Clear( ) GetChanges( ) Load( ) ReadXml( ) RejectChanges( ) Reset( ) WriteXml( )
Classe DataTable Propriedades
Columns DefaultView PrimaryKey Rows TableName
Métodos AcceptChanges( ) Clear( ) GetChanges( ) ImportRow( ) Load( ) NewRow( ) ReadXml( ) RejectChanges( ) Reset( ) Select( ) WriteXml( )
Principais classes do ADO.NET Classe DataRow
Propriedades Item RowState
Métodos AcceptChanges( ) Delete( ) GetChildRows( ) GetParentRow( ) RejectChanges( ) SetAdded( ) SetModified( )
Classe DataColumn Propriedades
AllowDBNull AutoIncrement AutoIncrementSeed AutoIncrementStep ColumnName DefaultValue Expression Unique
Métodos Nenhum método
extremamente significativo
Principais classes do ADO.NET
Classe DataRelation Propriedades
ChildColumns ChildKeyConstraint ChildTable ParentColumns ParentKeyConstraint ParentTable
Métodos Nenhum método extremamente significativo
Top Related