Desenvolvimento asp net
This presentation is the property of its rightful owner.
Sponsored Links
1 / 98

Desenvolvimento ASP PowerPoint PPT Presentation


  • 32 Views
  • Uploaded on
  • Presentation posted in: General

Desenvolvimento ASP.net. Desenvolvimento ASP.net. Framework .net Common Language Runtime Assembly Garbage Collection Conceitos de C# Características da Linguagem Operadores e estruturas ASP .net Paradigma ASP.net Visual Studio .NET Web Forms, Server Controls e User Controls

Download Presentation

Desenvolvimento ASP

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Desenvolvimento asp net

Desenvolvimento ASP.net


Desenvolvimento asp net1

Desenvolvimento ASP.net

  • Framework .net

    • Common Language Runtime

    • Assembly

    • Garbage Collection

  • Conceitos de C#

    • Características da Linguagem

    • Operadores e estruturas

  • ASP .net

    • Paradigma ASP.net

    • Visual Studio .NET

    • Web Forms, Server Controls e User Controls

    • Gestão do estado

    • ADO .Net


  • Framework net

    Framework .net


    Vis o net

    Visão .net


    Framework net1

    Conjunto de tecnologias para o desenvolvimento e utilização de componentes para a criação de:

    Web Forms

    Web Services

    Aplicações Windows

    Suporta todos as fases da produção de Software

    Desenvolvimento

    Debugging

    Distribuição

    Manutenção

    Framework .net


    Common language runtime clr

    Common Language Runtime - CLR

    • Ambiente que permite a execução em tempo real de aplicações.

    • Fornece um conjunto de serviços, ao nível das fases de desenvolvimento, de distribuição e de execução, que melhoram o desempenho da aplicação.


    Clr servi os

    CLR - Serviços

    • Fase de Desenvolvimento

      • Diversas linguagens de programação

      • Aumento de produtividade

    • Fase de Instalação

      • Processo de instalação resume-se a uma cópia de ficheiros (XCOPY)

      • A gestão de versões de componentes é feita no processo de compilação

    • Fase de Execução

      • Performance

      • Escalabilidade

      • Disponibilidade


    Clr arquitectura

    CLR - Arquitectura

    Faz a integração com a .NET Framework class library.

    Base Class Library (.NET Framework) Support

    Sequencia a distribuição dos componentes

    Tratamento de erros

    Procedimentos de segurança baseados na identificação do utilizador e na localização do código

    Thread Support

    COM Marshaler

    Fornece classes e interfaces para utilização de threads

    Type Checker

    Exception Manager

    Converte código MSIL para código nativo optimizado

    Security Engine

    Debug Engine

    Impede conversões inadequadas e gere o acesso às variáveis

    MSIL to Native

    Compilers (JIT)

    Code

    Manager

    Garbage

    Collector (GC)

    Permite fazer debug da aplicação

    Gestão de memória

    Class Loader

    Controla a execução do código

    Gere a metadata e o carregamento das classes necessárias.


    Clr caracter sticas

    CLR - Características

    • Sistema Comum de Tipos

      • Conversão directa dos tipos de informação da Linguagem de programação para os da Framework

    • Compilador Just-in-time (JIT)

      • O JIT converte o código intermédio (MSIL) em código nativo optimizado

    • Gestão de memória – Garbage Collection

      • Evita problemas de “falta de memória disponível”

    • Tratamento de Excepções

      • Permite um tratamento de erros mais elegante

    • Gestão de Threads


    Compila o e execu o

    Compilação e Execução

    EXE/DLL(MSIL and metadata)

    SourceCode

    Compiler

    ClassLibraries(MSIL and metadata)

    Class Loader

    JIT Compilerwith optionalverification

    Call to anuncompiledmethod

    Trusted,pre-JITedcode only

    ManagedNative Code

    Execution

    Security Checks

    Runtime Engine


    Assembly

    Assembly

    • Contêm código e metadata para o CLR

    • Constitui-se como unidade básica de distribuição

    • Podem ser do tipo EXE e DLL


    Demo 01 ildasm exe

    DEMO 01: ildasm.exe

    • Desenvolver uma pequena aplicação em VB .NET e em C#

    • Utilizar a aplicação ildasm para verificar o código MSIL gerado


    Demo 01

    DEMO 01

    • Ficheiro Demo1.cs

    • csc /t:exe /out:Demo1CS.exe Demo1.cs

    • ildasm Demo1CS.exe

    using System;

    namespace Ades

    {

    public class Demo

    {

    public static void Main()

    {

    Console.WriteLine("Ola Mundo");

    Console.ReadLine();

    }

    }

    }


    Demo 011

    DEMO 01

    • Ficheiro Demo1.vb

    • vbc /t:exe /out:Demo1VB.exe Demo1.vb

    • ildasm Demo1VB.exe

    • Imports System

    • namespace Ades

    • public class Demo

      • public Shared Sub Main()

      • Console.WriteLine("Ola Mundo")

      • Console.ReadLine()

      • end Sub

    • end class

    • end namespace


    Algoritmo garbage collection

    Algoritmo “Garbage Collection”

    • Espera que todas as threads terminem

    • Verifica quais os objectos que estão referenciados. A memória ocupada pelos objectos não referenciados é libertada.

    • Desloca os objectos válidos para a “compact heap”

    • Actualiza as suas referências


    Garbage collection

    Garbage Collection


    Conceitos de c

    Conceitos de C#


    Introdu o ao c

    Introdução ao C#

    • Linguagem baseada no C/C++

      • com inspiração no Java

      • preserva investimentos e conhecimentos adquiridos

      • permite um código mais “limpo”

      • possui construções sintácticas especiais para retirar partido da framework

    • Tudo são objectos

    • Ficheiros têm extensão .cs


    Tipos de dados

    Tipos de dados

    • object

    • string

    • sbyte, short, int, long

    • byte, ushort, uint, ulong

    • char

    • float, double, decimal

    • bool

    • Estes tipos são alias para os tipos definidos na framework

      Por exemplo, int == System.Int32


    Classes e namespaces

    Classes e namespaces

    • Organização do código dentro de classes

    • Classes organizadas dentro de namespaces

    namespace Demo {

    public class MyClass {

    ...

    }

    }


    M todos

    Métodos

    • Sintaxe semelhante ao C/C++

    • Podem ser públicos ou privados

    • Suporta overloading

    public class MyHelloWorld {

    ...

    public void SayHello()

    { ... }

    private void SetTitle(String Title)

    { ... }

    }


    Passagem de par metros

    Passagem de parâmetros

    • Por valor

    • Por referência

      • out – parâmetro de saída

      • ref – parâmetro de entrada e saída

        public void func1(int x)

        { ... }

        public void func2(out int x)

        { ... }

        public void func2(ref int x)

        { ... }


    Heran a

    Herança

    • Apenas existe herança simples

      public class MyClassBase {

      ...

      public void Func() { ... }

      }

      public class MyClassDeriv : MyClassBase {

      ...

      public new void Func() { base.Func(); ... }

      }


    Propriedades

    Propriedades

    • Sintaxe alternativa para acesso a membros de dados da classe mas com as vantagens dos métodos

    public class Button : Control

    {

    private string m_caption;

    public string Caption {

    get { return m_caption; }

    set { m_caption = value; Repaint(); }

    }

    ...

    }


    Operadores

    Operadores

    • Atribuição

      • =

    • Relacionais

      • < <= > >= == !=

    • Lógicos

      • && || !

    • Aritméticos

      • + - * / %

      • += -= *= /= ++ --


    Cria o de objectos

    Criação de objectos

    // definição da classe

    public class MyClass { ... }

    // definição da variável

    MyClass obj;

    // criação do objecto

    obj = new MyClass();


    Construtores

    Construtores

    • Seguem as regras do C/C++

      • Mesmo nome da classe

      • Sem tipo de retorno

      • Podem ter ou não argumentos

    public class MyClass {

    ...

    public MyClass() { ... }

    public MyClass(String Title) { ... }

    }


    Ciclos

    Ciclos

    // repetição n vezes

    for (int x = 0; i < vec.Length; i++)

    Console.WriteLine(vec[i]);

    // repetição condicional

    int i = 0;

    while (i < vec.Length)

    {

    Console.WriteLine(vec[i]);

    i++;

    }

    // enumeração (colecções)

    foreach (String x in vec)

    Console.WriteLine(x);


    Estruturas condicionais

    Estruturas Condicionais

    // teste de decisão

    if (i < vec.Length)

    Console.WriteLine(vec[i]);

    else

    Console.WriteLine(“Erro!!!”);

    // teste múltiplo

    switch (x)

    {

    case 1: ...; break;

    case 2: ...; goto case 3;

    case 3: ...; break;

    default: ...; break;

    }


    Asp net

    ASP.net


    O que o asp net

    O que é o ASP.net?

    • Sucessor da tecnologia Active Server Pages

    • Independente da linguagem utilizada

    • Independente do browser cliente

    • Informação inserida no cliente é directamente processada no servidor (conceito de Web Form)

    • Criação de aplicações Web distribuídas por meio de “Web Services”


    Iis internet information server

    IIS – Internet Information Server

    • Servidor Web produzido pela Microsoft

    • Incluído no

      • Windows 2000,

      • Windows XP Professional,

      • Windows 2003

  • Suporte para ASP e ASP.Net

  • Servidor IIS do DEI – w2ks.dei.isep.ipp.pt

  • Referencia local ao IIS - localhost


  • Coloca o de conte dos asp net no iis

    Colocação de conteúdos ASP.net no IIS

    • Num servidor IIS local

      • Aceder a c:\inetpub\wwwroot

      • Criar uma directoria para colocar as páginas do site

      • Classificar essa directoria como sendo uma Directoria Virtual (recorrendo a Computer Management no painel de controlo)

      • O acesso web é feito pela URL http://localhost/nomeDirectoriaVirtual


    Coloca o de conte dos asp net no iis1

    Colocação de conteúdos ASP.Net no IIS

    • No w2ks

      • Os alunos de ADES têm uma directoria com o nome de xxxxxxw$ (onde xxxxxx representam os 6 dígitos da direita do numero do aluno)

      • Essa directoria está classificada como directoria virtual (com nome xxxxxx).

      • Para colocar conteúdos nessa directoria devem aceder a \\w2ks\xxxxxxw$

      • O acesso web é feito pela URL http://w2ks.dei.isep.ipp.pt/xxxxxx


    Aplica o asp net

    Aplicação ASP.net

    ASP.NET Web Server

    Clients

    Web Forms

    Web.config

    Page1.aspx

    Code-behind pages

    OutputCache

    Internet

    Page2.aspx

    machine. config

    global.asax

    WebServices

    Database

    Components

    XML Data


    Modelo de execu o asp net

    Modelo de Execução ASP.net


    Visual studio net

    Visual Studio .NET

    • Um só IDE (Integrated Development Environment) para múltiplas linguagens e múltiplos tipos de projectos

    • Múltiplas linguagens num só projecto

    • Múltiplos projectos numa só solução

    • Integra browser

    • Permite efectuar debbug

    • Gera código .net


    Templates de projectos

    Templates de Projectos

    • A lista dos templates de projectos baseia-se no perfil do utilizador e na escolha do tipo de projecto


    Ide vs net

    IDE VS.net

    Editor/Browser

    Object Browser

    Toolbox

    SolutionExplorer

    Properties

    Server Explorer

    Task List

    Dynamic Help


    Processo de desenvolvimento

    Processo de Desenvolvimento

    Fase de análise

    e especificação

    Criar um

    projecto

    Produzir a interface

    e escrever código

    Fase de

    testes

    Compilar

    Visual Studio .NET

    Disponibilizar


    Ficheiros da aplica o web

    Ficheiros da aplicação Web

    • Solution files (.sln, .suo)

    • Project files (.vbproj, .csproj)

    • Web application files

      • Web forms (.aspx)

      • User Controls (.ascx)

      • Web services (.asmx)

      • Classes, code-behind pages (.cs, .vb)

      • Global application classes (.asax)

      • Web.config file

    • Project assembly (.dll)


    Estrutura de ficheiros da aplica o web

    Estrutura de Ficheiros da Aplicação Web

    Inetpub

    My Documents

    wwwroot

    Visual StudioProjects

    Solution

    ProjectA

    Solution.sln

    ProjectA.csproj

    WebForm1.aspx

    WebForm1.aspx.cs(Code-behind page)

    Development Files

    Assembly Files

    Bin

    Build

    ProjectA.dll


    Demo 02 visual studio net

    DEMO 02: Visual Studio .NET

    • Apresentação do IDE VS.NET

    • Criar um Projecto de Aplicação Web em C#


    O que s o web forms

    O que são Web Forms?

    • Ficheiros com extensão aspx

    • Constituídos essencialmente por:

      • Atributo Page (directiva @Page)

      • Atributo Body

      • Atributo Form

    <%@ Page language="c#“

    Codebehind="WebForm1.aspx.cs”

    Inherits=“nomeAplicacao.WebForm1”%>

    <body MS_POSITIONING="GridLayout">

    <form id="Form1" method="post" runat="server">


    Web forms modelo de objectos

    Web Forms – Modelo de Objectos

    • As Web Forms possuem um modelo de objectos interno constituído por:

      • Objecto Server

        • Representa o Servidor Web

    • Objecto Page

      • Representa a página Web

  • Objecto Request

    • Representa o pedido efectuado pelo browser cliente

  • Objecto Response

    • Represente a resposta a enviar ao cliente pelo servidor


  • Web forms atributo form

    Web Forms – Atributo FORM

    • Dentro do atributo FORM colocam-se controlos denominados “Server Controls”

      • Web Server Controls

        • Intrinsic controls (asp:TextBox)

        • Validation controls (asp:RequiredFieldValidator)

        • Rich controls (asp:Calendar)

        • List-bound controls (asp:DataGrid)

        • Internet Explorer Web Controls (http://www.asp.net/IEWebControls/Download.aspx)

      • HTML Server Controls

        • Controlos HTML básicos (DIV, IMG, HR ,...)


    Server controls

    Server Controls

    • Runat=“server”

      • São executados no Servidor Web

      • Armazenam informação de estado (viewstate)

  • Têm funcionalidades intrínsecas

  • Modelo de programação comum

    • Todos têm os atributos Id e Text

  • Geram código HTML específico para o browser cliente

  • <asp:Button id=“Button1” runat=“server”

    Text=“Submit”/>


    Html server controls

    HTML server controls

    • Baseados nos elementos HTML

    • Runat=“server”

    • Existem no namespace System.Web.UI.HtmlControls

    <input type="text" id="txtName"runat="server" />


    Web server controls

    Web server controls

    • Existem no namespace System.Web.UI.WebControls

      Sintaxe ASP.net

      HTML gerado

    <asp:TextBox id="TextBox1"

    runat="server">Text_to_Display

    </asp:TextBox>

    <input name="TextBox1" type="text"

    value="Text_to_Display"

    Id="TextBox1"/>


    Escolher o controlo adequado

    Escolher o Controlo Adequado

    Optar por

    HTML Server Controls se:

    Optar por

    Web Server Controls se:

    Preferir trabalhar com a estrutura de objectos HTML

    Preferir trabalhar com um modelo de programação orientado a objectos

    Pretender fornecer rapidamente funcionalidades ASP.NET a páginas HTML já existentes

    Pretender desenvolver páginas que serão visualizadas por diversos tipos de browsers

    O controlo irá interagir com scripts no cliente e no servidor

    Necessitar de funcionalidades especificas tais como um “calendar”

    A largura de banda for limitada

    A largura de banda disponível não constituir um problema


    Demo 03 server controls

    DEMO 03: Server Controls

    • Criar um Web Form

    • Utilizar Server Controls (Label, Button e calendar)


    Como programar em asp net

    Como programar em ASP .NET

    • Três métodos de implementar código:

      • Colocar o código no mesmo ficheiro que contem os Server Controls misturado com as definições dos mesmos (mixed)

      • Colocar o código no mesmo ficheiro que contem os Server Controls, mas numa zona separada das definições dos controlos (inline code)

      • Colocar o código num ficheiro separado (code-behind pages)

    • Por defeito o VS .NET utiliza ficheiros separados de código (code-behind)


    Programa o inline

    Programação Inline

    • Definição dos controlos e código no mesmo ficheiro

    • Secções separadas para o código e para o HTML

    <HTML>

    <asp:Button id="btn" runat="server"/>

    </HTML>

    <SCRIPT Language="c#" runat="server">

    private void btn_Click(object sender,

    System.EventArgs e)

    {

    . . .

    }

    </SCRIPT>


    Programa o code behind

    ProgramaçãoCode-Behind

    • Código e HTML em ficheiros separados

      • Programadores e Web Designers podem trabalhar de forma independente

    Um só ficheiro

    Ficheiros separados

    código

    código

    <tags>

    <tags>

    Form1.aspx.cs

    Form1.aspx

    Form1.aspx


    Como funcionam as p gina com code behind

    Como funcionam as página com Code-Behind?

    • Ficheiros separados para interface e para o código

    • A ligação dos ficheiros é feita pela directiva @ Page no processo de pré-compilação (JIT-compile)

    Page1.aspx.cs

    public class WebForm1 {

    private void cmd1_Click()

    { …

    }

    }

    Page1.aspx

    <% @ Page Language="c#"Inherits="Project.WebForm1" Codebehind="Page1.aspx.cs" Src = "Page1.aspx.cs" %>


    O que s o event procedures

    O que são Event Procedures?

    • Acções em resposta à interacção do utilizador com os controlos numa página


    Scripts no cliente

    Scripts no cliente

    • Só utilizados com controlos HTML

    • Interpretado pelo browser e executado no cliente

    • Não acede a recursos do servidor

    • <SCRIPT language="language">

    .HTM Pages

    Internet


    Scripts no servidor

    Scripts no servidor

    • Utilizado em qualquer tipo de Server Control

    • Compilado e executado no servidor

    • Tem acesso aos recursos do servidor

    • <SCRIPT language=“cs“ runat="server">

    .ASPX Pages

    Internet


    Tratamento de eventos no cliente e no servidor

    Tratamento de eventos no Cliente e no Servidor


    Demo 04 eventos

    DEMO 04: Eventos

    • Criar procedimentos que permitam responder a eventos capturados pelos controlos da web form


    Tratamento do evento postback uso de page ispostback

    Tratamento do evento Postback - uso de Page.IsPostBack

    • 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

    }


    Como se processa o postback

    Como se processa o Postback?


    Demo 05 page load

    DEMO 05: Page_Load

    • Definir procedimento Page_load

    • Utilizar a propriedade Page.IsPostBack


    An lise da maquina de calcular

    Análise da “Maquina de Calcular”


    O que valida o da informa o inserida pelo utilizador

    O que é 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

    Validação no Cliente e no Servidor

    User Enters Data

    • ASP.NET cria processos de validação no cliente e no servidor

      • Validação no Cliente

        • Dependente do browser

        • Resposta imediata

        • Reduz número de pedidos ao servidor

      • Validação no servidor

        • Repete todas as validações efectuadas no cliente

        • Permite utilizar recursos externos (p.e. bases de dados)

    Error Message

    Valid?

    No

    Client

    Yes

    Server

    Valid?

    No

    Yes

    Web ApplicationProcessed


    Controlos de valida o

    Controlos de Validação

    O ASP.NET fornece controlos de validação para:

    • Comparar valores

    • Comparar com uma fórmula pré-definida

    • Verificar se um valor pertence a um intervalo

    • Confrontar com expressões regulares

    • Exigir preenchimento de informação

    • Sumariar as validações inseridas numa página


    Controlos de valida o como utilizar

    Controlos de ValidaçãoComo utilizar?

    • Colocar o controlo na web form

    • Seleccionar o controlo que se pretende validar

    • Configurar as propriedades de validação

    1

    2

    3

    <asp:TextBox id="txtName" runat="server" />

    <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 combina o

    Controlos de validaçãoCombinação

    • Pode haver vários controlos de validação afectos a um mesmo objecto

    • Somente o RequiredFieldValidator verifica se a informação está preenchida


    Controlos de valida o1

    Controlos de Validação

    • RequiredFieldValidator

      • InitialValue

  • CompareValidator

    • ValueToCompare or ControlToCompare

    • Type

    • Operator

  • RangeValidator

    • MinimumValue

    • MaximumValue

    • Type


  • Controlos de valida o2

    Controlos de Validação

    • RegularExpressionValidator

      • Permite confrontar valores com expressões regulares

      • O VS .NET já inclui algumas expressões regulares (p.e: emails)

    <asp:RegularExpressionValidator …

    ControlToValidate=“Email"…ValidationExpression=

    "\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"

    >*</asp:RegularExpressionValidator >


    Controlos de valida o3

    Controlos de Validação

    • CustomValidator

      • Permite validar no cliente, no servidor, ou em ambos

        • ClientValidationFunction

        • OnServerValidate

    <asp:RequiredFieldValidator id="txtNameValidator" runat="server"

    ControlToValidate="txtOddNum"

    ClientValidationFunction="ClientValidateName"

    OnServerValidate="ServerValidateName"

    ErrorMessage="You must enter an odd number"

    display="dynamic" Text="*">

    </asp:RequiredFieldValidator>


    Controlos de valida o4

    Controlos de Validação

    • ValidationSummary

      • Apresenta as mensagens de erro de todos os controlos de validação da página

    <asp:ValidationSummary id="valSummary"

    runat="server"HeaderText="These errors were found:"ShowSummary="True"

    DisplayMode="List"/>


    Propriedade page isvalid

    Propriedade Page.IsValid

    Verifica o estado de todos os controlos de validação inseridos na página

    private void cmdSubmit_Click(object s, System.EventArgs e)

    {if (Page.IsValid)

    {Message.Text = "Page is Valid!";

    // Actualização de uma base de dados ou

    //outra tarefa sensivel

    }

    }


    Demo 06 valida es

    DEMO 06: Validações

    • Usar controlos de validação

    • Utilizar a propriedade Page.IsValid


    O que um user control

    O que é um User Control?

    • Um User Control é um Web Server Control definido pelo programador

    • Tem extensão .ascx

    • Simplifica a reutilização de componentes de interface dentro de uma aplicação web

    • Não contem as etiquetas <HTML>, <BODY> e <FORM>

    • Possui directiva @Control

    • Contem o código para tratar os seus próprios eventos

    <%@ Control Language=“c#" %>


    Porqu utilizar user controls

    Control1.ascx

    Porquê utilizar User Controls?

    • Reutilização de componentes de interface e de código

    Aplicação A

    Aplicação B

    Page3.aspx

    Page1.aspx

    Page2.aspx


    Cria o de um user control

    Criação de um User Control

    • Dois métodos:

      • Utilizando o Visual Studio .NET

      • Converter uma página ASP.NET para user control

  • A interacção é feita alterando as propriedades

  • As páginas utilizadoras do controlo deverão estar em flow layout

  • public int pNum

    {

    get

    {

    return Convert.ToInt32(txtNum.Text);

    }

    set

    {

    txtNum.Text = Convert.ToString(value);

    }

    }


    Demo 07 user control

    DEMO 07: User Control

    • Criação de User Controls

    • Utilização de User Controls


    Gest o do estado

    Gestão do estado

    Sem gestão de estado

    Com gestão de estado

    Login.aspx

    Login.aspx

    Please enter your logon information:

    Please enter your logon information:

    First Name

    First Name

    John

    John

    Last Name

    Last Name

    Chen

    Chen

    Web Server

    Submit

    Submit

    Web Server

    Greetings.aspx

    Greetings.aspx

    Hello

    Hello John Chen

    I forget who you are!!


    Tipos de gest o de estado

    Tipos de Gestão de Estado


    Gest o de estado no servidor

    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

    Gestão de Estado no Cliente

    • Utilização de cookies (persistentes / temporárias)

    • Menos fiável que a gestão no servidor

      • O utilizador pode apagar as cookies

    • Limite ao tamanho da informação

      • Restrições no cliente ao tamanho de ficheiros

    Servidor

    Cliente

    Cookies


    Global asax

    Global.asax

    • Só um ficheiro Global.asax por aplicação Web

    • Colocado na raiz da directoria virtual

    • Utilizado para tratar os eventos dos objectos Application e Session


    Global asax1

    Global.asax

    • Eventos tratados

      • Application_Start

        • Executado imediatamente antes da aplicação ser criada.

    • Session_Start

      • Executado imediatamente antes da sessão ser criada

  • Application_BeginRequest

    • Executado por cada pedido ao servidor

  • Application_EndRequest

    • Executado no final de cada pedido ao servidor

  • Application_AuthenticateRequest

    • Executado antes da autenticação de um utilizador

  • Application_Error

    • Executado por cada erro não previsto na aplicação

  • Session_End

    • Executado imediatamente antes do final da instância da sessão

  • Application_End

    • Executado imediatamente antes do final da instância da aplicação


  • M todos de autentica o do asp net

    Métodos de Autenticação do ASP.NET

    • Windows

      • Assenta no SO e no IIS

      • Utilizador faz um pedido seguro que é transferido ao IIS

      • Após as credencias serem verificadas, o pedido é satisfeito

  • Forms

    • É feito um acesso não autenticado a um Form HTML onde serão fornecidas as credenciais

    • Após verificação é atribuída uma cookie de autenticação

  • Microsoft Passport

    • Serviço de autenticação centralizado

    • XML Web Service


  • M todos de autentica o

    Métodos de Autenticação


    Compara o entre os m todos de autentica o

    Comparação entre os Métodos de Autenticação


    Acesso a bases de dados ado net

    Acesso a Bases de DadosADO .NET

    • Namespace System.Data

    • Modos de aceder à informação

      • OLE DB – namespace System.Data.OleDb

      • SQL - namespace System.Data.SqlClient

    Objectos

    OLE DB

    OLE DB

    Informação

    Aplicativo .Net

    Objectos

    OLE DB

    TDS

    Informação

    SQL Server


    Objecto connection

    Objecto Connection

    • SqlConnection / OleDbConnection

    • Parâmetros da string de conexão

      • Connection timeout

      • Data source

      • Initial catalog

      • Integrated security

    string strConn = "data source=localhost; " +

    "initial catalog=northwind; " +

    "integrated security=true";

    SqlConnection conn = new SqlConnection(strConn);

    • Password

    • Persist security info

    • Provider

    • User ID


    Objecto command

    Objecto Command

    • SqlCommand / OleDbCommand

    • Executar comandos SQL

      • ExecuteReader – executa comandos que devolvam linhas de informação (ex: SELECT)

      • ExecuteNonQuery – executa comandos que retornam dados (ex: INSERT, UPDATE, DELETE)

      • ExecuteScalar - retorna um valor único como resultado de uma função agregada (ex: COUNT)

    SqlCommand com = new SqlCommand();

    com.Connection = conn;

    com.CommandText="Select * From Tabela;";

    SqlDataReader Info = com.ExecuteReader();


    Objecto datareader

    Objecto DataReader

    • SqlDataReader / OleDbDataReader

    • Percurso forward-only em modo read-only

    • Propriedades e métodos mais usais

      • FieldCount

      • IsClosed

      • Close

      • GetString

      • GetInt32

    SqlDataReader Info = com.ExecuteReader();

    DataGrid1.DataSource=Info;


    Acesso a bases de dados

    Acesso a Bases de Dados


    Demo 08 ado net

    DEMO 08: ADO .NET

    • Objectos Connection, Command e DataReader


    Perguntas respostas

    Perguntas & Respostas


    Mais informa o

    Mais Informação...

    • 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

    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/


    Desenvolvimento asp net2

    Desenvolvimento ASP.net


  • Login