Você está na página 1de 27

Manuais e recursos para desenvolvimento web

www.criarweb.com

Manual sobre a plataforma .Net

Autores do manual

Este manual foi criado pelos seguintes colaboradores de Criarweb.com:

Francisco Recio e David


Provencio
(13 capítulos)

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 1


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

Net Framework
A nova tecnologia de Microsoft oferece soluções aos problemas de programação atuais, como
são a administração de código ou a programação para Internet. Para aproveitar ao máximo as
características de .Net é necessário entender a arquitetura básica na que está implementada
esta tecnologia e assim se beneficiar de todas as características que oferece esta nova
plataforma.

O Framework de .Net é uma infra-estrutura sobre a que se reúne todo um conjunto de


linguagens e serviços que simplificam enormemente o desenvolvimento de aplicações.
Mediante esta ferramenta se oferece um ambiente de execução altamente distribuído, que
permite criar aplicações robustas e escaláveis. Os principais componentes deste ambiente são:
• Linguagens de compilação
• Biblioteca de classes de .Net
• CLR (Common Language Runtime)

Atualmente, o Framework de .Net é uma plataforma não incluída nos diferentes sistemas
operacionais distribuídos por Microsoft, pelo qual é necessária sua instalação prévia à execução
de programas criados mediante .Net. O Framework se pode baixar gratuitamente através da
web oficial de Microsoft (ver link de download nos recursos do final).

.Net Framework suporta múltiplas linguagens de programação e embora cada linguagem tenha
sua características próprias, é possível desenvolver qualquer tipo de aplicação com qualquer
destas linguagens. Existem mais de 30 linguagens adaptadas a .Net, desde as mais conhecidas
como C# (C Sharp), Visual Basic ou C++ até outras linguagens menos conhecidas como Perl
ou Cobol.

Common Language Runtime (CLR)

O CLR é o verdadeiro núcleo do Framework de .Net, já que é o ambiente de execução no qual


se encarregam as aplicações desenvolvidas nas distintas linguagens, ampliando o conjunto de
serviços que oferece o sistema operacional padrão Win32.

A ferramenta de desenvolvimento compila o código fonte de qualquer uma das linguagens


suportadas por .Net em um mesmo código, denominado código intermediário (MSIL, Microsoft

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 2


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

Intermediate Lenguaje). Para gerar tal código o compilador se baseia no Common Language
Specification (CLS) que determina as regras necessárias para criar código MSIL compatível
com o CLR.

Desta forma, indistintamente da ferramenta de desenvolvimento utilizada e da linguagem


escolhida, o código gerado é sempre o mesmo, já que o MSIL é a única linguagem que entende
diretamente o CLR. Este código é transparente ao desenvolvimento da aplicação já que o gera
automaticamente o compilador.

Entretanto, o código gerado em MSIL não é código máquina e portanto, não pode se executar
diretamente. Necessita-se um segundo passo no qual uma ferramenta denominada compilador
JIT (Just-In-Time) gera o código máquina real que se executa na plataforma que tenha o
computador.

Desta forma se consegue com .Net certa independência da plataforma, já que cada plataforma
pode ter seu compilador JIT e criar seu próprio código máquina a partir do código MSIL.

A compilação JIT realiza o CLR à medida que se invocam os métodos no programa e, o código
executável obtido, se armazena na memória cache do computador, sendo recompilado só
quando se produz alguma mudança no código fonte.

Biblioteca de classes de .Net

Quando se está programando uma aplicação muitas vezes se necessitam realizar ações como
manipulação de arquivos, acesso a dados, conhecer o estado do sistema, implementar
segurança, etc. O Framework organiza toda a funcionalidade do sistema operacional em um
espaço de nomes hierárquico de forma que na hora de programar resulta bastante simples
encontrar o que se necessita.

Para isso, o Framework possui um sistema de tipo universal, denominado Common Type
System (CTS). Este sistema permite que o programador possa interagir os tipos que se
incluem no próprio Framework (biblioteca de classes de .Net) com os criados por ele mesmo
(classes). Desta forma se aproveitam as vantagens próprias da programação orientada a
objetos, como a herança de classes pré-definidas para criar novas classes, ou o polimorfismo
de classes para modificar ou ampliar funcionalidades de classes já existentes.

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 3


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

A biblioteca de classes de .Net Framework inclui, entre outros, três componentes chave:
• ASP.NET para construir aplicações e serviços Web.
• Windows Forms para desenvolver interfaces de usuário.
• ADO.NET para conectar as aplicações a bancos de dados.
A forma de organizar a biblioteca de classes de .Net dentro do código é através dos espaços de
nomes (namespaces), onde cada classe está organizada em espaços de nomes segundo sua
funcionalidade. Por exemplo, para manejar arquivos se utiliza o espaço de nomes System.IO e
se o que se quer é obter informação de uma fonte de dados se utilizará o espaço de nomes
System.Data.

A principal vantagem dos espaços de nomes de .Net é que desta forma se tem toda a
biblioteca de classes de .Net centralizada sob o mesmo espaço de nomes (System). Ademais,
através de qualquer linguagem se usa a mesma sintaxe de invocação, já que a todas as
linguagens se aplica a mesma biblioteca de classes.

Ensamblados

Um dos maiores problemas das aplicações atuais é que em muitos casos têm que tratar com
diferentes arquivos binários (DLL´s), elementos de registro, conectividade aberta a bancos de
dados (ODBC), etc.

Para solucionar o Framework de .Net maneja um novo conceito denominado ensamblado. Os


ensamblados são arquivos com forma de EXE ou DLL que contém toda a funcionalidade da
aplicação de forma encapsulada. Portanto a solução ao problema pode ser tão fácil como
copiar todos os ensamblados no diretório da aplicação.

Com os ensamblados já não é necessário registrar os componentes da aplicação. Isto se deve


a que os ensamblados armazenam dentro de si mesmos toda a informação necessária no que
se denomina o manifesto do ensamblado. O manifesto percorre todos os métodos e

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 4


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

propriedades em forma de meta-dados junto com outra informação descritiva, como


permissões, dependências, etc.

Para gerenciar o uso que fazem das aplicações dos ensamblados .Net utiliza o chamado cache
global de ensamblados (GAC, Global Assembly Cache). Assim, .Net Framework pode hospedar
no GAC os ensamblados que possam ser usados por várias aplicações e inclusive distintas
versões de um mesmo ensamblado, algo que não era possível com o anterior modelo COM.

Recursos:

Página oficial de .Net Framework


http://msdn.microsoft.com/netframework/

Download de .Net Framework


http://msdn.microsoft.com/netframework/howtoget/default.aspx

Artigo por Francisco Recio e David Provencio

Vantagens de .Net
A seguir se resumem as vantagens mais importantes que proporciona .Net Framework:
• Código administrado: O CLR realiza um controle automático do código para que este
seja seguro, ou seja, controla os recursos do sistema para que a aplicação se execute
corretamente.
• Interoperabilidade multilinguagem: O código pode ser escrito em qualquer
linguagem compatível com .Net já que sempre se compila em código intermediário
(MSIL).
• Compilação just-in-time: O compilador JIT incluído no Framework compila o código
intermediário (MSIL) gerando o código máquina próprio da plataforma. Aumenta-se
assim o rendimento da aplicação ao ser específico para cada plataforma.
• Garbage collector: O CLR proporciona um sistema automático de administração de
memória denominado recolhedor de lixo (garbage collector). O CLR detecta quando o
programa deixa de utilizar a memória e a libera automaticamente. Desta forma o
programador não tem porque liberar a memória de forma explícita embora também
seja possível fazê-lo manualmente (mediante o método disponse() liberamos o objeto
para que o recolhedor de lixo o elimine da memória).
• Segurança de acesso ao código: Pode-se especificar que uma peça de código tenha
permissões de leitura de arquivos, porém não de escritura. É possível aplicar distintos
níveis de segurança ao código, de forma que se pode executar código procedente do
Web sem ter que se preocupar se isto vai estragar o sistema.
• Desdobramento: Por meio dos ensamblados resulta muito mais fácil o
desenvolvimento de aplicações distribuídas e a manutenção das mesmas. O Framework
realiza esta tarefa de forma automática melhorando o rendimento e assegurando o
funcionamento correto de todas as aplicações.
São tudo vantagens?

Processos como o recolhimento de lixo de .Net ou a administração de código introduzem


fatores de sobrecarga que repercutem na demanda de mais requisitos do sistema.

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 5


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

O código administrado proporciona uma maior velocidade de desenvolvimento e maior


segurança de que o código seja bom. Em contrapartida o consumo de recursos durante a
execução é muito maior, embora com os processadores atuais isto seja cada vez menos
inconveniente.
O nível de administração do código dependerá em grande medida da linguagem que utilizemos
para programar. Por exemplo, enquanto que Visual Basic .Net é uma linguagem totalmente
administrada, C Sharp permite a administração de código de forma manual, sendo por padrão
também uma linguagem administrada. Enquanto que C++ é uma linguagem não administrada
na qual se tem um controle muito maior do uso da memória que faz a aplicação.

Artigo por Francisco Recio e David Provencio

Programação orientada a objetos, introdução


A programação orientada a objetos é uma evolução da programação procedural baseada em
funções. A POO nos permite agrupar seções de código com funcionalidades comuns.

Uma das principais desvantagens da programação procedural baseada em funções é a sua


construção, quando uma aplicação sob este tipo de programação cresce, a modificação do
código se torna muito trabalhosa e difícil devido a que a mudança de uma só linha em uma
função, pode acarrear a modificação de muitas outras linhas de código pertencentes a outras
funções que estejam relacionadas.

Com a programação orientada a objetos se pretende agrupar o código encapsulando-o e


tornando-o independente, de maneira que uma modificação devida ao crescimento da
aplicação só afete a poucas linhas.

A organização de uma aplicação em POO se realiza mediante estruturas de código, também


chamados objetos. Estes objetos contem uma série de procedimentos e informação destinados
a resolver um grupo de tarefas com um denominador comum. Um procedimento que esteja
situado em um objeto não poderá ser usado por outro procedimento pertencente a outro
objeto, se não for sob uma série de regras. Os dados que mantiver o objeto, permanecerão
isolados do exterior e só se poderá acessá-los seguindo certas normas.

O objetivo de POO é catalogar e diferenciar o código, em base a estruturas hierárquicas


dependentes, ao estilo de uma árvore genealógica.

Os objetos se criam a partir de uma série de especificações ou normas que definem


como vai ser o objeto, isto é o que em POO se conhece como uma classe.

As classes definem a estrutura que vão ter os objetos que se criarem a partir dela,
indicando que propriedades e métodos terão os objetos.

As propriedades definem os dados ou informação do objeto, permitindo modificar ou


consultar seu estado, enquanto que os métodos são as rotinas que definem o
comportamento do objeto. É necessário ter muito claro qual é a diferença entre um objeto e
uma classe, a este respeito podemos dizer que uma classe constitui a representação abstrata
de algo enquanto que um objeto constitui a representação concreta do que a classe define.
Imaginemos os planos de uma casa desenhados por um arquiteto, neles encontramos o

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 6


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

esquema da casa, as medidas, os materiais, etc... Uma vez construída a casa poderemos
comprovar que cumpre tudo o que os planos determinavam, desta maneira podemos comparar
os planos da casa com as classes em POO, e a casa em si com um objeto criado a partir de
uma classe. Deve-se destacar também que com os mesmos planos se podem criar muitas
casas iguais, o mesmo ocorre em POO, a partir de uma classe se podem criar muitos objetos
iguais.

A criação de um objeto a partir de uma classe se conhece como instanciação de um objeto.

Artigo por Francisco Recio e David Provencio

Tipos de dados em .NET


Todos as linguagens de programação que cumprem as normas de .NET têm muitas coisas em
comum, uma delas é o conjunto de tipos de dados. Há que destacar que estes tipos de dados
estão implementados como classes, de maneira que uma variável declarada de um tipo
determinado, terá a capacidade de usar tanto os métodos como as propriedades que
pertençam à classe do tipo de dado.
VB.NET

Dim Cadeia As String


Dim Longitude As Integer
Cadeia = "Dados"
Longitude = Cadeia.Length()

C#

String Cadeia;
Int Longitude;
Cadeia = "Dados";
Longitude = Cadeia.Length();

No exemplo anterior declaramos uma variável de tipo String (Cadeia de caracteres), e


podemos ver como esta variável possui uma série de propriedades e métodos que podem ser
invocados, neste caso usamos a propriedade Length() para obter o número de caracteres da
variável Cadeia e atribuí-lo à variável Longitude, que passaria a ter o valor 5.

Na seguinte tabela se mostra uma relação dos tipos de dados de .NET Framework e sua
correspondência em VB.NET e C#.
Nome da Tipo de dado Tipo de dado
Descrição
classe em VB.NET en C#

Byte Byte Byte Inteiro sem signo de 8 bit.

Sbyte Sbyte (Não sbyte Inteiro sem signo de 8bit (Tipo não conforme com o CLS)

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 7


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

nativo)

Int16 Short short Inteiro com signo de 16 bit.

Int32 Integer int Inteiro com signo de 32 bit.

Int64 Long long Inteiro com signo de 64 bit.

Uint16 UInt16 (No ushort Inteiro sem signo de 16 bit. (Tipo não conforme com o CLS)
nativo)

Uint32 Uint32 (No uint Inteiro sem signo de 32 bit. (Tipo não conforme com o CLS)
nativo)

Uint64 Uint64 (Não ulong Inteiro sem signo de 64 bit. (Tipo não conforme com o CLS)
nativo)

Single Single float Número com vírgula flutuante de precisão simples, de 32 bit.

Double Double double Número com vírgula flutuante de precisão dupla, de 64 bit.

Boolean Boolean bool Valor lógico

Char Char char Caractere unicode de 16 bit.

Decimal Decimal decimal Valor decimal de 96 bit.

IntPtr IntPtr (No nativo) -- Inteiro com signo cujo tamanho depende da plataforma: 32 bit em
plataformas de 32 bit e 64 bit em plataformas de 64 bit. (Tipo não
conforme com o CLS)

UintPtr UintPtr (Não -- Inteiro sem signo cujo tamanho depende da plataforma: 32 bit em
nativo) plataformas de 32 bit e 64 bit em plataformas de 64 bit. (Tipo não
conforme com o CLS)

String String string Cadeia de caracteres.

Segundo o modo no qual se armazenam e manipulam estes tipos de dados se podem dividir
em duas categorias.

Artigo por Francisco Recio e David Provencio

Tipos de dados por valor e por referência


Tipos por valor: os tipos por valor armazenam dados aos que se pode acessar de forma
direta, por sua vez dentro desta categoria encontramos mais subcategorias como os tipos

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 8


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

nativos de .NET, os tipos de dados criados pelo programador e os enumerados. Os tipos por
valor não podem ter valores nulos.

Tipos por referência: Os tipos criados por referência armazenam o endereço de memória em
que se encontra um dado determinado de maneira que usaremos esse endereço de memória
para acessar de forma indireta ao dado. Os tipos por referência se dividem em vários
subgrupos como são as classes próprias da plataforma, interfaces, classes criadas pelo
programador, etc.

Quando executamos uma aplicação é necessário que os dados se situem na memória do


computador, a qual está divida em duas partes, uma chamada Stack, de pequeno tamanho,
porém de acesso muito rápido e outra chamada Heap que conta com um maior tamanho, mas
como uma velocidade de acesso inferior.

Quando criamos tipos por valor, o valor da variável deste tipo se armazena no Stack, se
atribuímos uma variável destas características a outra, se cria uma cópia no Stack. Ao destruir
um tipo por valor, se destrói também o valor que se salvou no Stack.
Quando criamos um tipo por referência, na verdade o que salvamos no Heap é um endereço
de memória que aponta a um valor, porém não ao valor em si mesmo. Se atribuímos uma
variável que contém um tipo por referência a outra variável, se diz que ambas se referem ao
mesmo valor. Os tipos por referência podem conter valores nulos.

Artigo por Francisco Recio e David Provencio

Criação de classes em VB.Net e C#


Para explicar a criação de classes usaremos um exemplo simples baseado em uma classe
principal "bicicleta".

Para criar uma classe devemos definir suas propriedades e seus métodos, neste exemplo se
usam os seguintes termos como propriedades da classe bicicleta: Modelo, Preço,

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 9


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

NumeroDeVelocidades e Velocidade; como métodos da classe se usam: Acelerar(km) , Frear()


e ConsultarVelocidade().

VB.NET

Public Class Bicicleta


Public Modelo as String
Public Preco as Double
Public NumeroDeVelocidades as Integer
Private Velocidade as Integer

Public Sub Acelerar(ByVal km As Integer)


Velocidade = Velocidade + km
End Sub

Public Sub Frear()


If Velocidade > 0 Then
Velocidade = Velocidade -1
End If
End Sub

Public Function ConsutarVelocidade() As Integer


Return Velocidade
End Function
End Class

C#

Class Bicicleta
{
public string Modelo;
public double Preco;
public int NumeroDeVelocidades
private int Velocidade

public void Acelerar(int km)


{
Velocidade = Velocidade + km;
}

public void Frear()


{
if (Velocidade > 0)
{
Velocidade = Velocidade - 1;
}
}

public int ConsultarVelocidade()


{
return Velocidade;
}
}

Nossa classe bicicleta consta de várias propriedades e métodos, as palavras Private e Public
definem a possibilidade das propriedades, funções ou sub-rotinas. A definição de uma

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 10


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

propriedade ou método de tipo privado indica que só poderá ser usada dentro do código da
mesma classe, se criássemos um objeto de tipo bicicleta, as especificações da classe não nos
permitiriam acessar à propriedade velocidade para consultá-la ou modificá-la, já que está
definida como privada. Em troca se podem usar as sub-rotinas Acelerar() e Frear() já que são
de tipo Public, e desde dentro delas se interage com as propriedades privadas, com isto
conseguimos encapsular o código e tornar acessível só aquele que quisermos.

Uma vez construída a classe já se podem instanciar objetos da mesma.

VB.NET

Dim objBicicleta as Bicicleta = New Bicicleta

Dim VelocidadeAtual as Integer

objBicileta.Modelo = "Montanha"
objBicicleta.Preco = 200
objBicicleta.NumeroDeVelocidades = 21

objBicicleta.Acelerar(5)
objBicicleta.Frear()

VelocidadeAtual = objBicicleta.ConsultarVelocidade

C#

Bicicleta objBicicleta = new Bicicleta();

int VelocidadeAtual;

objBicicleta.Modelo = "Montanha";
objBicicleta.Preco = 200;
objBicicleta.NumeroDeVelocidades = 21;

objBicicleta.Acelerar(5);
objBicicleta.Frear();

VelocidadeAtual = objBicicleta.ConsultarVelocidade();

Após a criação do objeto objBicicleta a partir da classe, se podem modificar os valores das
propriedades de tipo Public, e chamar aos métodos de tipo Public.

No exemplo se chama aos métodos Acelerar(5), passando-lhe o número de km que queremos


acelerar através do parâmetro "km" que está definido na sub-rotina.

Logo, se chama ao método Frear() que decresce em uma unidade o valor da propriedade
Velocidade.

Por último se usa a função ConsultarVelocidade(), que retorna o valor da propriedade


Velocidade para introduzi-lo na variável VelocidadeAtual.

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 11


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

Artigo por Francisco Recio e David Provencio

Aplicações de Console
Pode-se definir uma aplicação de console como aquela que se executa em uma janela de MS-
DOS, ou seja, em linha de comandos.

O mais comum dentro do desenvolvimento sob a plataforma .Net é a criação de aplicações


Web ou aplicações Windows, entretanto a melhor forma de sentar umas bases firmes sob a
programação orientada a objetos é começar construindo aplicações simples de console.

Nota: Para os exemplos descritos neste artigo usaremos o ambiente de desenvolvimento


facilitado por Microsoft, Visual Studio.Net.

O primeiro exemplo de aplicação de console é um simples programa que pede ao usuário 2


números e lhe pergunta se deseja somá-los ou subtraí-los.

Antes de começar a desenvolver a aplicação há que conhecer a classe principal que interage
com o console de MS-DOS, a classe Console.

Mediante esta classe se consegue mostrar informação na tela assim como capturar a
informação que introduza o usuário, cabe destacar que os métodos da classe Console são de
tipo Shared, isto significa que não é necessário criar um objeto a partir da classe para invocar
a seus métodos, é possível fazê-lo indicando o nome da classe seguido de um ponto e o nome
do método.

O método WriteLine()

Este método é o que se usa para mostrar texto no console, o método escreve na tela o valor
que lhe passemos como parâmetro.

O parâmetro que recebe o método pode ser de vários tipos, já seja uma cadeia de caracteres,
um número inteiro, uma linha em branco, etc...
VB.NET

Module Module1
Sub Main()
'Escrevemos uma cadeia de caracteres.
Console.WriteLine("Escrevendo uma linha no console")
'Escrevemos um número inteiro
Console.WriteLine(23)
'Escrevemos uma comparação lógica
Console.WriteLine(3 > 1)
Console.ReadLine()
End Sub
End Module

C#

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 12


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

using System;

namespace ConsoleApplication2
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
//Escrevemos uma cadeia de caracteres.
Console.WriteLine("Escrevendo uma linha no console");
//Escrevemos um número inteiro
Console.WriteLine(23);
//Escrevemos uma comparação lógica
Console.WriteLine(3 > 1);
Console.ReadLine();
}
}
}

É importante destacar que este método adiciona automaticamente o enter no final da linha,
isto significa que a seguinte chamada a Console.WriteLine() escreve na seguinte linha.

A última linha na que realizamos uma chamada ao método ReadLine() se utiliza para evitar
que a tela se feche automaticamente.

Fig1: Exemplo do método WriteLine()

O método ReadLine()

Este método se usa para recolher a informação que o usuário introduz quando a aplicação
assim o requeira. Quando invocamos ao método Console.ReadLine() o sistema fica em espera
até que o usuário clique a tecla Intro.

Se se atribui a chamada ao Console.ReadLine() a uma variável se consegue capturar o dado


introduzido pelo usuário, para depois poder operar com ele.

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 13


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

VB.NET

'Declaramos uma variável de tipo cadeia de caracteres


Dim cadeia As String
'Mostramos uma mensagem ao usuário
Console.WriteLine("Por favor, introduza seu nome:")
'Capturamos o dado introduzido pelo usuário
cadeia = Console.ReadLine()
'Operamos com o dado
cadeia = "O nome introduzido é: " & cadeia
'Mostramos a cadeia
Console.WriteLine(cadeia)
Console.ReadLine()

C#

//Declaramos uma variável de tipo cadeia de caracteres


string cadeia;
//Mostramos uma mensagem ao usuário
Console.WriteLine("Por favor, introduza seu nome:");
//Capturamos o dado introduzido pelo usuário
cadeia = Console.ReadLine();
//Operamos com o dado
cadeia = "O nome introduzido é: " + cadeia;
//Mostramos a cadeia
Console.WriteLine(cadeia);
Console.ReadLine();

Fig2: WriteLine() e ReadLine()

O método Read()

Este é outro método que permite capturar informação que provém do usuário. A diferença com
o anterior é que Read() não espera a que o usuário clique intro para capturar o dado
introduzido, e sim que o faz após o clique de qualquer tecla, capturando o valor da tecla
clicada em código ASCII.

Artigo por Francisco Recio e David Provencio

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 14


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

Exemplo de aplicação de console


Agora que se conhece um pouco melhor a classe Console, se dará começo à aplicação, as
linguagens usadas para este exemplo são Visual Basic.Net e C#.

O primeiro que se deve fazer depois de arrancar Visual Studio.Net, é escolher a opção
"Aplicação de console" (Fig1), após este passo Visual Studio gera as seguintes linhas:

Fig3: Criação de uma aplicação de console.

VB.NET

Module Module1
Sub Main()

End Sub
End Module

C#

using System;

namespace ConsoleApplication3
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
//
// TODO: Add code to start application here
//
}
}

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 15


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

Dentro do procedimento Main(), se introduz o código que se quer executar. O primeiro que há
que fazer é declarar as variáveis que serão usadas, para este exemplo se usam 2 variáveis de
tipo inteiro para recolher os valores dos números que introduzir o usuário:
VB.NET

Module Module1
Sub Main()
Dim Numero1 As Integer
Dim NUmero2 As Integer
End Sub
End Module

C#

using System;

namespace ConsoleApplication3
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
int Numero1;
int Numero2;
}
}
}

Uma vez estando declaradas as variáveis, se solicitam ambos números ao usuário e se


introduzem seus valores nas duas variáveis, a seguir se pede que se selecione uma das opções
possíveis, somar ou diminuir.
VB.NET

Module Module1
Sub Main()
Dim Numero1 As Integer
Dim Numero2 As Integer

Console.WriteLine("Introduza o primeiro número")


Numero1 = Console.ReadLine()

Console.WriteLine("Introduza o segundo número")


Numero2 = Console.ReadLine()

Console.WriteLine("Escolha uma opção: 1 - Somar / 2 - Diminuir")


If (Console.ReadLine = 1) Then
Console.WriteLine("O resultado da soma é: " & Numero1 + Numero2)
Console.ReadLine()
ElseIf (Console.ReadLine = 2) Then

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 16


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

Console.WriteLine("O resultado da subtração é: " & Numero1 - Numero2)


Console.ReadLine()
Else
Console.WriteLine("Opção Incorreta")
End If
End Sub
End Module

C#

using System;

namespace ConsoleApplication2
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
int Numero1;
int Numero2;
int opcion;

Console.WriteLine("Introduza o primeiro número");


Numero1 = Int32.Parse(Console.ReadLine());

Console.WriteLine("Introduza o segundo número");


Numero2 =Int32.Parse(Console.ReadLine());

Console.WriteLine("Escolha uma opção: 1 - Somar / 2 - Subtrair");


opcao = Int32.Parse(Console.ReadLine());
if (opcao == 1)
{
Console.WriteLine("O resultado da soma é: " + (Numero1 + Numero2));
}
else if (opcao == 2)
{
Console.WriteLine("O resultado da subtração é: " + (Numero1 - Numero2));
}
else
{
Console.WriteLine("Opção Incorreta");
}
Console.ReadLine();
}
}
}

Seguindo o fluxo da aplicação se pode ver depois que o usuário seleciona uma das 2 opções,
se mostra o resultado da operação por tela.

Se o que se deseja é encapsular o código na medida do possível se podem construir 2 funções


que realizem as operações de somar e subtrair e que escrevem o resultado na tela, o código
ficaria da seguinte maneira:

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 17


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

VB.NET

Module Module1
Sub Main()
Dim Numero1 As Integer
Dim Numero2 As Integer

Console.WriteLine("Introduza o primeiro número")


Numero1 = Console.ReadLine()

Console.WriteLine("Introduza o segundo número")


Numero2 = Console.ReadLine()

Console.WriteLine("Escolha uma opção: 1 - Somar / 2 - Subtrair")


If (Console.Readline = 1) Then
Somar(Numero1, Numero2)
ElseIf (Console.ReadLine = 2) Then
Subtrair(Numero1, Numero2)
Else
Console.WriteLine("Opção Incorreta")
End If
End Sub

Sub Somar(ByVal Numero1, ByVal Numero2)


Console.WriteLine("O resultado da soma é: " & Numero1 + Numero2)
Console.ReadLine()
End Sub

Sub Subtrair(ByVal Numero1, ByVal Numero2)


Console.WriteLine("O resultado da subtração é: " & Numero1 - Numero2)
Console.ReadLine()
End Sub
End Module

C#

using System;

namespace ConsoleApplication2
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
int Numero1;
int Numero2;
int opcion;

Console.WriteLine("Introduza o primeiro número");


Numero1 = Int32.Parse(Console.ReadLine());

Console.WriteLine("Introduza ol segundo número");


Numero2 =Int32.Parse(Console.ReadLine());

Console.WriteLine("Escolha uma opção: 1 - Somar / 2 - Subtrair");


opcao = Int32.Parse(Console.ReadLine());
if (opcao == 1)
{

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 18


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

Somar(Numero1, Numero2);
}
else if (opcao == 2)
{
Subtrair(Numero1, Numero2);
}
else
{
Console.WriteLine("Opção Incorreta");
}
Console.ReadLine();
}
static void Sumar (int Numero1, int Numero2)
{
Console.WriteLine("O resultado da soma é: " + (Numero1 + Numero2));
Console.ReadLine();
}

static void Restar (int Numero1, int Numero2)


{
Console.WriteLine("O resultado da subtração é: " + (Numero1 - Numero2));
Console.ReadLine();
}
}
}

Desta maneira, consegue-se encapsular funcionalidades dentro da aplicação, atribuindo as


tarefas de Somar e Subtrair a duas sub-rotinas, a principal vantagem é que uma vez que
tivermos assegurado que ambas sub-rotinas funcionam, poderemos nos esquecer delas e
continuar com o desenvolvimento da aplicação.

O resultado da execução de qualquer dos 2 códigos anteriores é o seguinte:

Fig4: Resultado do exemplo.

Artigo por Francisco Recio e David Provencio

Criação de uma aplicação Windows


A criação de aplicações Windows sempre foi uma tarefa complexa devido à dificuldade de ter
que criar uma interface gráfica que interaja com o usuário. Os Formulários de Windows
(Windows Forms) de .Net permitem a criação de aplicações de interface gráfica de forma
simples. .Net proporciona um amplo conjunto de controles como botões, caixas de texto,
etiquetas, etc. que, unidos à completa biblioteca de classes de .Net, torna possível o
desenvolvimento de aplicações em pouco tempo.

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 19


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

Nos seguintes exemplos se usou Visual Studio.Net, não obstante, é possível criar aplicações
Windows com um simples editor de texto e uma ferramenta de compilação compatível com o
CLR de .Net Framework. Visual Studio.Net admite desenhar a aplicação de forma visual,
permitindo em cada momento acessar ao código gerado e servindo ademais como ferramenta
de compilação e depuração.

Para começar uma nova aplicação, se executa Visual Studio e se seleciona Novo Projeto, onde
aparecem os diferentes tipos de aplicações que se podem realizar com cada linguagem,
selecionando neste caso Aplicação para Windows. Uma vez introduzido o nome da aplicação e
a rota onde se localizará se clica Aceitar.

Fig 1. Janela de criação de novo projeto.

Nos seguintes exemplos se mostra como criar uma aplicação baseada em formulários nas duas
linguagens mais comuns, tanto para Visual Basic .Net como para C#, deixando ao leitor a
escolha da linguagem que lhe pareça mais próxima.

Depois de ter criado o projeto, se dispõe de uma aplicação completa que pode ser executada.
Isto pode ser realizado no menu Depurar pulsando no elemento Iniciar (Tecla F5) o que
executará diretamente a aplicação dentro de Visual Studio.Net. Veja o código criado até agora:
VB.NET

Public Class Form1


nbsp; Inherits System.Windows.Forms.Form

+ " Código gerado pelo designer de Windows Forms "

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles


MyBase.Load

'escreva aqui seu código.

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 20


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

End Sub

End Class

Se se optou por C# pode-se comprovar que o código é muito parecido, embora seja algo mais
extenso já que a iniciação por padrão está situada fora da região do código que o designer vai
gerando automaticamente.

No código gerado, o formulário 'Form1' é uma classe que provém mediante a palavra chave
inherits (heredar) do espaço de nomes System.Windows.Forms.Form pertencente à biblioteca
de classes de .Net. As aplicações desenvolvidas com .Net utilizam a biblioteca de classes
incluída no Framework de .Net que proporcionam um conjunto de funcionalidades pré-
fabricadas que facilitam o desenvolvimento. Esta biblioteca de classes está organizada em
espaços de nomes dependendo de sua funcionalidade.

Todas as linguagens incluídas em .Net estão orientadas a objetos, seguindo esta metodologia o
formulário 'Form1' se declara como uma classe. Como se verá mais adiante, isto facilita o
acesso aos métodos e propriedades do formulário e dos controles que se incluam ao tratar a
cada elemento como objetos independentes.

Artigo por Francisco Recio e David Provencio

Inserção de controles
Os controles simplificam a criação da interface facilitando ademais a interação ordenada do
usuário com a aplicação e a visualização dos resultados. Dentro da região denominada "Código
gerado pelo Designer de Windows Forms", o designer cria automaticamente o código
correspondente a cada controle segundo vão se adicionando estes através da tela de designer
visual. Portanto, para inserir um novo controle basta arrastá-lo através do quadro de
ferramentas ao formulário da aplicação.

Arrastando um controle de tipo botão ao nosso formulário e analisando o código gerado se


observa o seguinte:
VB.NET

Me.Button1 = New System.Windows.Forms.Button()


'
'Button1
'
Me.Button1.Location = New System.Drawing.Point(184, 64)
Me.Button1.Name = "Button1"
Me.Button1.TabIndex = 0
Me.Button1.Text = "Button1"

C#

this.button1 = new System.Windows.Forms.Button();


//

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 21


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

// button1
//
this.button1.Location = new System.Drawing.Point(184, 88);
this.button1.Name = "button1";
this.button1.TabIndex = 0;
this.button1.Text = "button1";

Ao introduzir um controle de tipo botão se gera no código um objeto chamado 'button1'


pertencente à classe System.Windows.Forms.Button e se estabelecem as propriedades por
padrão para esse objeto. Estas propriedades se podem modificar através da vista de desenho
clicando sobre o controle 'button1' e selecionado o painel de propriedades (Tecla F4).

Outra forma de mudar as propriedades de um controle é modificando o código gerado


automaticamente pelo designer. A seguir se mostra um simples exemplo onde se modifica o
literal de texto que aparece sobre o botão 'button1':
VB.NET

'load da classe Form1


Button1.Text = "Clique aqui"

C#

//load da classe Form1


button1.Text="Clique aqui";

Artigo por Francisco Recio e David Provencio

Uso de eventos em .Net


Os eventos são chamados ao código que se produzem quando o usuário realiza uma ação
como, por exemplo, clicar um botão ou selecionar um elemento de uma lista. Os eventos
respondem à ação do usuário sobre um controle executando uma função situada no código.

A seguir se mostra um simples exemplo no qual se introduzem uma série de controles na vista
de desenho modificando as propriedades tal como aparecem na imagem.

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 22


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

Ao clicar duas vezes sobre o botão 'btnBoton' se cria automaticamente no código do formulário
o evento que se corresponde com o clique do botão. A função criada se denomina por padrão
'btnBoton_Click' e responde ao evento btnBoton.Click que se indica por meio da palavra-chave
handles (manejador). Seguidamente se mostra o código no evento que interage com o resto
de controles:
VB.NET

Private Sub btnBoton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles


btnBoton.Click

lblResultado.Text = "Ola " & txtNome.Text

End Sub

C#

private void btnBoton_Click(object sender, System.EventArgs e)


{
lblResultado.Text = "Ola " + txtNome.Text;
}

Cada controle tem sua própria coleção de eventos. Para criar um novo evento se utiliza o menu
select de classes e seu correspondente menu de métodos situados na parte superior do código.

Artigo por Francisco Recio e David Provencio

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 23


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

Interação entre objetos e controles


A programação orientada a objetos proporciona um melhor ordenamento e clareza do código.
A forma de programar consiste em dividir o código em classes de objetos que posteriormente
podem ser reutilizados. Para mais informação se recomenda ler o artigo de 'Programação
orientada a objetos, introdução' incluído nesta seção.

Ao iniciar a aplicação, o ponto de início do código se situa por padrão no evento 'Load' da
classe 'Form1', se bem que se pode mudar dentro das propriedades do projeto através do
explorador de soluções. O evento 'Load' é uma sub-rotina que não devolve nenhum valor. Nela
se podem instanciar objetos de outras classes para ser utilizados posteriormente. O seguinte
exemplo mostra como criar uma classe própria e a instanciação de um objeto de tal classe:
VB.NET

Public Class MinhaClasseSomar

Public resultado As Integer

Public Function somar(ByVal NumSoma1 As Integer, ByVal NumSoma2 As Integer) As Integer

Return NumSoma1 + NumSoma2

End Function

End Class

C#

public class MinhaClasseSomar


{
public int resultado;

public int somar(int NumSoma1, int NumSoma2)


{
return NumSoma1 + NumSoma2;
}
}

No evento load de Form1 se cria um objeto da classe e se chama ao método somar.


VB.NET

'load da classe Form1


Me.Text = " Minha primeira Aplicação com Windows Forms"

Dim objetoSoma As New MinhaClasseSomar()


objetoSoma.resultado = objetoSoma.somar (10, 5) 'resultado = 15

lblResultado.Text = objetoSoma.resultado

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 24


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

C#

//load da classe Form1


this.Text = " Minha primeira Aplicação com Windows Forms";

MinhaClasseSomar objetoSoma = new WindowsApplication2.MinhaClasseSomar();


objetoSoma.resultado = objetoSoma.somar(10,5); //resultado = 15

lblResultado.Text = objetoSoma.resultado.ToString();

Pode-se observar como em C# é necessário converter previamente o resultado. Isto se deve a


que o resultado da soma é de tipo numérico e não se pode atribuir diretamente ao texto da
etiqueta, por isso que se deve converter previamente a tipo texto. Isto não é necessário em
Visual Basic .Net, onde a conversão de tipos não é obrigatória, embora seja recomendável para
obter um código melhor.

Com a programação orientada a objetos resulta mais fácil programar aplicações já que o
código está melhor estruturado e se torna mais simples de ler e modificar. Ademais, Visual
Studio .Net facilita em grande medida a criação de aplicações com interface gráfica ao gerar
automaticamente o código encarregado de visualizar formulários e controles.

Recursos:

101 Visual Basic and C# Code Samples


http://www.microsoft.com/downloads/details.aspx?FamilyID=08e3d5f8-033d-420b-a3b1-
3074505c03f3&DisplayLang=en

Artigo por Francisco Recio e David Provencio

Configuração de uma aplicação de ASP.NET


Existem diversos elementos de configuração e administração em uma aplicação Web de
ASP.Net. Este tipo de aplicação se compõe de um conjunto de arquivos armazenados em uma
pasta dentro do servidor Web.

Para executar uma aplicação Web de ASP.Net se necessita que o servidor Web seja compatível
com ASP.Net. Neste caso se utilizará IIS 5.0 (Internet Information Server) como servidor Web.
O IIS é um componente de Windows incluído nas versões profissionais de Windows 2000 e XP.
Se não se tem este componente, se deve proceder a sua instalação mediante o ícone de
'Adicionar ou remover programas' no painel de controle e selecionando 'Adicionar ou remover
componentes de Windows' onde aparecerá o IIS para sua instalação. O acesso ao IIS se realiza
mediante o ícone de 'Serviços de Internet Information Server' situado nas 'Ferramentas
administrativas' dentro do painel de controle.

O servidor Web IIS permite administrar as aplicações Web e se comunicar com os navegadores
cliente mediante protocolo http (protocolo de transferência de hipertexto). O IIS também
oferece outros serviços de protocolo, como transferência de arquivos (FTP), serviço de correio
eletrônico (SMTP) e serviço de notícias (NNTP).

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 25


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

Com o clássico ASP 3.0 era suficiente com ter o IIS instalado no servidor Web, já que era o IIS
o que diretamente interpretava o código ASP e enviava a resposta ao cliente. Entretanto, em
ASP.Net se necessita que o servidor Web tenha instalado .Net Framework para poder processar
código de ASP.Net, como ocorre com qualquer outra aplicação de .Net. É importante dizer que
os navegadores cliente que acessam à aplicação Web não necessitam ter instalado IIS nem
tampouco .Net Framework já que é o servidor Web o que tem que saber interpretar o código
de ASP.Net.

Quando se solicita uma página de tipo .aspx (página de ASP.Net) o servidor Web de IIS envia a
solicitude a .Net Framework que é quem realmente processa a petição da página. Desta forma,
as aplicações Web de ASP.Net se beneficiam de todas a vantagens de execução de código
em .Net Framework, já que o código é compilado e executado por .Net Framework e devolvido
ao IIS para que este por sua o envie ao cliente.

Com ASP.Net também é possível ter código de ASP 3.0 dentro de páginas de ASP.Net, com a
vantagem de que o código de ASP 3.0 também se compila junto com o código de ASP.Net
aumentando o rendimento do servidor Web.

A seguir, se mostra um exemplo dos distintos arquivos que podem existir em uma aplicação
Web de ASP.Net.

Fig. Aplicação Web de ASP.Net

Uma vez criada a aplicação, o código de servidor se acopla em um arquivo .dll situado na pasta
Bin da aplicação Web. Portanto, uma vez realizada a compilação, os arquivos de código (.vb ou
.cs) já não são necessários para a execução da aplicação já que estão acoplados na dll e é
aconselhável tirá-los do servidor para que não se possa acessar desde o exterior ao seu
conteúdo.

Resumindo, para que funcione uma aplicação Web de ASP.Net se deve ter no Servidor Web o
seguinte:
•Ter instalado IIS 5.0 ou superior no servidor Web e configurar um diretório virtual
associado à aplicação Web.
• Ter instalado no servidor Web .Net Framework.
• Os arquivos .aspx correspondentes às páginas Web.
• Um arquivo acoplado (DLL) situado na pasta Bin da aplicação Web, que contém o código
de servidor que necessitam as páginas aspx.
• Um arquivo chamado Global.asax que serve para o controle geral da aplicação durante
sua execução.
• Um arquivo chamado Web.config onde se estabelece a configuração da aplicação.
Apesar deste arquivo ser opcional, se necessita quando se quer estabelecer parâmetros
de configuração que não sejam os por padrão.
• De maneira adicional também pode aparecer na pasta Web outro tipo de arquivos
como:
 Arquivos .ascx (controles personalizados de usuário de ASP.Net)
 Arquivos .asmx (serviços Web XML de ASP.Net).

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 26


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.
Manuais e recursos para desenvolvimento web
www.criarweb.com

 Páginas .htm ou .html (páginas Web estáticas)


 Páginas .asp (páginas ativas de servidor)
 Arquivos .css (folhas de estilo CSS, Cascade Style Sheet).
 Documentos, imagnes, etc...
Para terminar, se criará uma aplicação Web do tipo ASP.Net e se instalará em um servidor Web
com IIS. O primeiro passo é criar a aplicação Web, para isso se entra em Visual Studio .Net e
no menu 'Arquivo' se seleciona 'Novo projeto'. Aqui se deve escolher uma das linguagens
disponíveis e selecionar 'Aplicação Web ASP.Net'.

Fig. Criação de uma aplicação Web de ASP.Net

De forma automática, ao criar um novo projeto Web, Visual Studio .Net cria um diretório
virtual no IIS e o associa com a aplicação Web. Se se instalou IIS com a configuração por
padrão, o web site pré-determinado (localhost) será 'c:inetpubwwwroot'.

No caso de que se tenha uma aplicação Web de ASP.Net já criada e se deseje instalar em um
servidor Web, se deve copiar a pasta com a aplicação no servidor Web e associá-la
manualmente a um diretório virtual. Para isso, dentro de IIS se seleciona o elemento de 'Web
site pré-determinado' e clicando com o botão direito se seleciona a opção: 'Novo' > 'Diretório
virtual' onde mediante um assistente se associa a pasta da aplicação Web a um diretório
virtual no servidor.

Fig. Criação de um diretório virtual em IIS

Para provar que a aplicação Web funciona corretamente se deve compilar primeiro em Visual
Studio .Net e posteriormente acessar à aplicação mediante o navegador:

http://[Nome_do_servidor]/[diretorio_virtual]/[página]

Por exemplo, http://localhost/MinhaWeb/webform1.aspx

Artigo por Francisco Recio e David Provencio

Manual sobre a plataforma .Net: http://www.criarweb.com/plataforma-net/ 27


© Os manuais de CriarWeb.com têm copyright dos autores. Não reproduzir sem autorização.

Você também pode gostar