CURSO DE EXTENSÃO PROGRAMAÇÃO C# .NET SENAC / 2011
Marcelo da Silveira Siedler siedler@gmail.com Dados Pessoais Marcelo da Silveira Siedler siedler@gmail.com Formação - Analista de Sistemas/Desenvolvedor de Sistemas - Professor do Senac nos cursos de Redes e ADS - Mestre em ciência da computação. - MCTS: .NET Framework 2.0 Web Applications - IBM Certified Solution Designer – Analysis
PLATAFORMA .NET
PLATAFORMA .NET Histórico: Microsoft oferece uma série de linguagens e ferramentas para desenvolvimento de aplicações: Visual Basic ASP Plataforma .NET: plataforma para desenvolvimento de aplicações. Desktop, Web, Móvel, Distribuída. Microsoft .NET Framework.
MICROSOFT .NET FRAMEWORK Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++ Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
MICROSOFT .NET FRAMEWORK Tecnologias: ASP .NET Web Forms (Web) Windows Forms (Desktop) Compact Framework (PDA / Móvel) Ambientes de Desenvolvimento: Visual Studio .NET (VS .NET) ASP.NET Web Matrix Mono Tools (Multiplataforma) Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
LINGUAGENS DE PROGRAMAÇÃO .NET Desenvolvimento Orientado a Objetos Desenvolvedor pode escolher a linguagem de acordo com o seu conhecimento prévio. VB.NET Desenvolvedores Visual Basic, ASP C# Desenvolvedores C, C++, Java. Cada formulário/página é uma classe da aplicação. Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
DESENVOLVENDO APLICAÇÕES WEB HTML – linguagem de marcação de texto usada para definir a apresentação das páginas no navegador Web. Javascript – linguagem de script (client-side) usada para dar interatividade a páginas HTML. ASP.Net – linguagem de script (server-side) usada para criação de conteúdo dinâmico. Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
ESTRUTURA DE DESENVOLVIMENTO DO CURSO Microsoft Visual Studio 2010. Web Forms – ASP.NET Framework. Linguagem de Programação C# Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
HTML + JAVASCRIPT <html> <head> <title>Asp.Net</title> </head> <body> <center> <h1>Introdução ASP.NET</h1> </center> <script language=javascript> alert("Meu Teste javascript"); </script> </body> </html> Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
EXEMPLO - HTML <html> <head> <title>Asp.Net</title> </head> <body> <center> <h1>Introdução ASP.NET</h1> </center> </body> </html> Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
DESENVOLVENDO APLICAÇÕES WEB Abra o Visual Studio. - Menu File / New Web Site. - Na aba Solution Explorer, botão direito no “projeto” Add new file – Web Form Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
<%Response.Write("Introdução ASP.NET");%> - Inserir Código: <%Response.Write("Introdução ASP.NET");%> <%Response.Write("<p>Bem vindo!!</p>");%> - Tags executadas no servidor: <% ... %> - Idêntico ao ASP/PHP ?!?!
Estrutura da Aplicação Web – Code Behind Arquivo .aspx Estrutura HTML e controles ASP.NET. Arquivo .cs Codificação server-side. Arquivo inicial Default.aspx Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
Estrutura da Aplicação public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) Response.Write("Script rodando no servidor"); } Page_Load – método executado sempre que a página for chamada. Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
ASP.Net - Elementos HTML - Elementos Html, por padrão, são tratados como texto. - <a href=”http://www.google.com”>Google</a> - Exemplos de elementos HTML: - Caixas de texto - input - Âncoras – a Caixa de seleção – select - Para tornar esses elementos HTML “programáveis” no .NET devemos adicionar o atributo runat=”server” a esses elementos. A identificação do elemento é feita através do atributo id=”nomedoelemento”. Exemplo: <p id=“paragrafo1” runar=“server”>Parágrafo</p> * ABA HTML NO TOOLBOX Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
ASP.Net - Elementos HTML Default.aspx Default.aspx.cs <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <a id="link1" runat="server">Meu Blog</a> </div> </form> </body> </html> public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) link1.HRef = "http://msiedler.wordpress.com"; } Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
ASP.Net - Elementos HTML/ Continuação Default.aspx Default.aspx.cs <body> <form id="form1" runat="server"> <a id="link1" runat="server">Google</a> <br /> <div id="div1" runat="server"> <h4 style="color:red"> Curso de extensão – C# .NET </h4> </div> </form> </body> public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) link1.HRef="http://www.google.com"; div1.Visible = false; } Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
ASP.Net - Elementos HTML/ Continuação Exercício: Criar um novo arquivo chamado exemploHTML com a seguinte estrutura (código inserido dentro do form): <div> <p>Este é o curso de programação .NET</p> <p>Faculdade SaoLucas II</p> <table> <tr> <td>C.H:</td> <td>40 horas</td> </tr> </table> <img alt="" src="O Rappa Vol. 01.jpg" /> </div> Infra-estrutura de desenvolvimento da tecnologia .Net. Ambiente para criação, desenvolvimento e execução de aplicações web. Linguagens de Programação C# (pronuncia-se C charp) Visual Basic (VB.Net) C++
Continuação Aplicar a esta página as seguintes alterações no C#: Trocar o conteúdo do texto para Faculdade Senac Pelotas (ver propriedade InnerText). Esconder a tabela com a carga horária. Colocar uma legenda na figura (ver atributo Alt)
ASP.Net – Web Server Controls - ASP.Net provê uma série de elementos para facilitar o desenvolvimento de aplicações Web. TextBox, DropDownList, Button - Disponibiliza elementos mais complexos que diminuem o esforço de desenvolvimento de tarefas complexas no Web Site. GridView, Calendar, Repeater. Permite associar eventos ao código. * ABA STANDARD NO TOOLBOX
ASP.Net – Web Server Controls - Sintaxe Básica: - <asp:NomeDoControle id=“nome” runat=“server”>. - Os Web Server Controls devem ser criados dentro de um formulário, formulário este que deve ser processado no servidor. <form id="form1" runat="server"> <asp:NomeDoControle id=“nome” runat=“server” /> <asp:NomeDoControle1 id=“nome1” runat=“server” /> <asp:NomeDoControle2 id=“nome2” runat=“server” /> ... </form> - Exemplo: - <asp:TextBox id=“nome” runat=“server”>.
ASP.Net – Web Server Controls - Acessando propriedades dos controles: - Os Web Server Controls, assim como os controles Html, apresentam uma série de propriedades que permitem definir a forma como cada controle é exibido na página. - Sintaxe: <asp:NomeDoControle id=“nome” runat=“server” propriedadeA=“valorA” >. - Exemplo: <asp:TextBox id=“nome” runat=“server” Text=“Testando Propriedade” CssClass="aba" Visible="true" ReadOnly="false">.
ASP.Net – Web Server Controls utilizando no sistema
ASP.Net – Web Server Controls Elementos (controles) disponíveis na listagem padrão (standard) da estrutura da janela Toolbox Adicionar um arquivo chamado webservercontrol1.aspx e adicionar os seguintes controles na sequencia: Label com atributos: id – labNome text – Nome: Textbox com atributos: id – txtNome text – “”: Label com atributos: id – labCurso text – Curso: Textbox com atributos: id – txtCurso text – “”: Rodar a aplicação
Programando – Web Server Controls / Eventos Exemplo2.aspx Exemplo2.aspx.cs <html> <body> <form id="Form1" runat="server"> <asp:Button ID="button1" Text="Clique no botão!" runat="server" OnClick="submit" /> </form> </body> </html> protected void submit(object sender, EventArgs e) { button1.Text = "você clicou no botão!"; } - Integrar os dois exemplos
Exercício - Criar um novo arquivo chamado exercicio1.aspx com a seguinte estrutura:
Exercício Quando carregar a página exibir na caixa de texto os seguintes valores: - Nome: João da Silva. - Cargo: Gerente de Projeto. Quando clicar no botão Anterior atualizar os valores para: - Nome: Mariluce Dias. - Cargo: Analista de Sitemas. Quando clicar no botão Próximo atualizar os valores para: - Nome: Lucas Silveira. - Cargo: Estagiário.
Exercício 2 - Criar um novo arquivo chamado exercicio2.aspx. - Criar uma caixa de texto e um botão. - Ao carregar a página exibir nesta caixa de texto a data e hora atual. - Quando clicar no botão deve atualiza a informação de data/hora da caixa de texto criada. - Para retornar a Data/Hora atual do sistema no formato String utiliza-se o comando DateTime.Now.ToString().
Mais sobre controles ASP.NET Documento auxiliar: controles.doc
Controles de Validação O ASP.NET provê uma série de controles de validação que auxiliam o desenvolvedor a fazer as verificações necessárias nos campos de entrada de dados do usuário. É necessário quando criamos os formulários validar se os campos estão formatados corretamente. Quando o usuário digita seu email por exemplo, temos que validar se este está no formato adequado.
Exemplo - RangeValidator <html> <body> <form id="Form1" runat="server"> <p>Digite um número de 1 a 100: <asp:TextBox id="tbox1" runat="server" /> <br /><br /> <asp:Button ID="Button1" Text="Submit" runat="server" /> </p> <p> <asp:RangeValidator ID="RangeValidator1" ControlToValidate="tbox1" MinimumValue="1" MaximumValue="100" Type="Integer" Text="O número deve ser entre 1 e 100!" runat="server" /> </form> </body> </html>
Exemplo - RequiredFieldValidator <html> <body> <form id="Form1" runat="server"> <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBoxNome" ErrorMessage="Preencha seu Nome." > </asp:RequiredFieldValidator> <label>Nome:</label> <asp:TextBox ID="TextBoxNome" runat="server"></asp:TextBox>* <br /> <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="TextBoxEmail" ErrorMessage="Preencha seu e-mail." > </asp:RequiredFieldValidator> <label>E-mail:</label> <asp:TextBox ID="TextBoxEmail" runat="server"></asp:TextBox>* <asp:Button ID="Button1" runat="server" Text="Button" /> </form> </body> </html>