Escolar Documentos
Profissional Documentos
Cultura Documentos
Web
Forms
Output Cache
Page1. Web.
aspx Code- config
behind
Page2. pages
Internet machine.
aspx config
global.
asax
Web XML
Database Components
Services Data
Estrutura de Aplicação Web
My Documents Inetpub
Visual Studio
wwwroot
Projects
Solution ProjectA
Solution.sln ProjectA.csproj
WebForm1.aspx
Development Files WebForm1.aspx.cs
(Code-behind page)
Runat=“server”
Existem no namespace
System.Web.UI.HtmlControls
Existem no namespace
System.Web.UI.WebControls
Sintaxe ASP.net
<asp:TextBox id="TextBox1"
runat="server">Text_to_Display
</asp:TextBox>
HTML gerado
<HTML>
<asp:Button id="btn" runat="server"/>
</HTML>
código
<tags> código
<tags>
Internet .HTM
Pages
Scripts no Servidor
.ASPX
Internet
Pages
Evento PostBack
O evento Page_Load ocorre em cada
pedido á página.
A propriedade IsPostBack do objecto Page
permite verificar se se trata do primeiro
pedido ou não.
private void Page_Load(object sender, System.EventArgs e)
{
if (!Page.IsPostBack)
{
//Código executado somente no primeiro pedido
}
//este código será executado em todos os pedidos
}
O que é a validação da
informação inserida pelo
utilizador?
Verifica se o valor inserido num controlo está
minimamente coerente com a informação
pretendida
Bloqueia o processamento da página até que
todos os valores sejam validos.
Validação no Cliente e no
Servidor
ASP.NET cria processos de User Enters
validação no cliente e no servidor Data Error
Validação no Cliente Message
Dependente do browser
Resposta imediata Valid?
Reduz número de pedidos ao No
servidor Client Yes
Validação no servidor
Server
Repete todas as validações
efectuadas no cliente Valid?
No
Permite utilizar recursos
externos (p.e. bases de dados) Yes
Web Application
Processed
Controlos de Validação
<asp:Type_of_Validator
id="Validator_id"
runat="server"
ControlToValidate="txtName"
ErrorMessage="Message_for_error_summary"
Display="static|dynamic|none"
Text="Text_to_display_by_input_control">
</asp:Type_of_Validator>
Controlos de Validação
Pode haver vários controls de validação afectos a um
mesmo objecto
Somente o RequiredFieldValidator verifica se a
informação está preenchida
Controlos de Validação
RequiredFieldValidator
CompareValidator
RangeValidator
RegularExpressionValidator
CustomValidator
ValidationSummary
O que é um User Control?
Page1.aspx
Page1.aspx
Page2.aspx
Gestão de Estado
Sem gestão de estado Com gestão de estado
Login.aspx Login.aspx
Please enter your Please enter your logon
logon information: information:
First Name First Name
John John
Last Name Last Name
Chen Chen
No Servidor No Cliente
Base de Dados
Query strings
Poderá ser utilizada uma BD para
Informação inserida no final da URL
manter informação do estado
Gestão de Estado no Servidor
O objecto Application permite armazenar
informação de toda a aplicação web
O uso de Session está condicionado á sessão do
browser cliente
A sessão ASP.NET é identificada pela propriedade
SessionID do objecto session
Servidor Web
Cliente
Variáveis de Sessão e de Aplicação
SessionID
Gestão de Estado no Cliente
Servidor
Cliente
Cookies
30
Ligações a Base de Dados
ADO .NET
Acesso a Base de Dados
Namespace System.Data
Modos de aceder à informação
OLE DB – namespace System.Data.OleDb
SQL - namespace System.Data.SqlClient
Objectos
Aplicativo .Net
OLE DB
OLE DB Informação
<connectionStrings>
<add name="northwindConnectionString"
connectionString="Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=D:\dotnet2_0_projectos\northwind.mdb"
providerName="System.Data.OleDb"/>
</connectionStrings>
Página .aspx
<asp:SqlDataSource ID="SqlDataSource1" runat="server“
ConnectionString="<%$ ConnectionStrings:northwindConnectionString
%>“
ProviderName="<%$
ConnectionStrings:northwindConnectionString.ProviderName %>"
SelectCommand="SELECT [CompanyName… [City] FROM
[Customers]">…
ADO .net
ADO .net
Configurar GridView
ADO .net
API Membership e Login
Web Site Administration Tool
Membership e Login
Membership e Login
Objectivos:
Criar página principal com link para login
LoginStatus control
Abrir página de login – Login.aspx
Login control
Validação do utilizador e regresso à página principal com
apresentação de sucesso na validação
LoginView control
Apresentação do nome do utilizador
LoginName control
Impedir acesso a páginas para utilizadores não autenticados
Criar rules
API Membership e Login
API MEMBERSHIP
Criar Regras
Inserir regras de acesso para uma dada
directoria ( p.e. memberpages)
Utilizar Web Site Administration Tool
Security -> Create Access Rules
Controlos de Login
Criar página com Login Button
Inserir controlo LoginStatus
Login
Este link referencia, por omissão, a página Login.aspx
Web.config – Form Authentication
<system.web>
<authentication mode="Forms" />
</system.web>
PasswordRecovery:
Namespace: System.Web.UI.WebControls
Sintaxe:
[BindableAttribute(false)]
public class PasswordRecovery : CompositeControl
Class Membership
ValidateUser da class membership
FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text,
NotPublicCheckBox.Checked);
else
Msg.Text = "Login failed. Please check your user name and password and try again.";
}
PROFILES
Objecto Profile
O objecto Profile permite armazenar informação única de um utilizador.
Quando o utilizador visita novamente o site é possível usar a informação
armazenada para apresentar ao utilizador uma versão personalizada da
aplicação Web.
MSDN Library
http://msdn.microsoft.com/library
.net framework center
http://msdn.microsoft.com/netframework/
C#
http://msdn.microsoft.com/vcsharp/
ASP.net
http://www.asp.net
Laboratório .net do ISEP/IPP
http://www.dei.isep.ipp.pt/labdotnet/
Tutoriais
http://www.gotdotnet.com/
http://www.w3schools.com/aspnet/
http://www.asp-php.net/tutorial/asp.net/
http://www.dei.isep.ipp.pt/ades/
http://www.asp.net/learn/videos/default.aspx
Jorge Ricardo Calejo
Microsoft Student Partner
http://weblogs.pontonetpt.com/calejo
ricardo.calejo@gmail.com