1.Fundamentos da Linguagem C# C# - Fundamentos da Linguagem Orientada a Objetos. Sintaxe Básica: - Declaração de variável: tipo nomevariavel; - Exemplos: int numero; String nome; DateTime data; - Comentário //Coloque comentário de uma linha assim /* E demais linhas assim /* Estruturas Condicionais if (expression ) { faz A } [else { faz B ] } <script runat="server"> void Page_Load() { string nome = "Alaor"; if (nome == "Alaor") { Label1.Text = "Olá Alaor"; } else { Label1.Text = "Você não é o Alaor"; } } </script> Estruturas Condicionais switch (expression ) <script runat="server"> void Page_Load() { { status = 'T'; case constant-expression : char switch (status) { statement case 'A': Label1.Text = "Ativo"; jump-statement break; case 'T': [default: statement ] Label1.Text = "Temporário"; break; } default: Label1.Text = "Inativo"; break; } } </script> Estruturas Condicionais while (expression) { statement } int i = 0; while (i < 10) { Response.Write(i.ToString()); } Estruturas Condicionais for ([initializers]; [expression]; [iterators]) statement for (int i = 0; i < 100; i++) { if (i % 10 == 0) { Response.Write(i.ToString()); } } Operadores Operadores matemáticos - (+, -, *, /, %). Operadores relacionais - (==, !=, <, >, <=, >=) Operadores lógicos - && -- e - || -- ou - ! -- negação Exemplo: - if ((x == 8) || (y == 12)) Conversão de Tipos Permitir a conversão entre os tipos da linguagem C#. Em C#, cada tipo (int, string, date, float) é uma classe e é possível possível realizar a conversão entre os tipos de diversas maneiras. No próximo slide é apresentado alguns tipos de conversão. String textoStr; Int32 valorInt; float valorFl; valorInt = 4; //converte inteiro para String textoStr = valorInt.ToString(); //conversão de String para inteiro valorInt = Int32.Parse(textoStr); //conversão de String para float valorFl = float.Parse(textoStr); //conversão de Int32 para float valorFl = (float)(valorInt); //Comando TryParse, tenta converter, retornando true ou //false if (Int32.TryParse(textoStr, out valorInt) == true) { txtLabel.Text = "OK"; } else { txtLabel.Text = "ERRO"; } Trabalhando com String Classe String provê uma série de métodos para facilitar a manipulação de conteúdo textual. - String.Format(StringFormatada, Argumentos) Exemplo: - String.Format(“Meu nome não é {0}. É {1}”, “Jonny”, “João”); Resultado Esperado: - “Meu nome não é Jonny. É João” Substitui os valores entre chaves pelos valores informados nos argumentos. - String.Equals - String.IsNull Exercício Criar um novo arquivo. Criar um formulário com os campos: - TextBox para Nome e Idade. - Criar um botão Enviar. - Abaixo do botão adicionar uma linha (<hr>) e após criar dois Controles do tipo label. - Quando o usuário clicar no botão enviar preencher os labels com as seguintes informações: Exercício Label1: Olá, + nome digitado Label2: Você é, + .. - Se o campo idade for menor que 14 adicionar criança ao texto do label2. - Se campo idade for entre 14 e 17 adicionar adolescente ao texto do label2. - Se for maior que 17 adicionar adulto ao texto do label2. Redirecionamento Dentro das aplicações Web muitas vezes é necessário mudarmos de página em função de algumas informações providas pelo usuário. Para invocar uma página do código ASP.NET utilizamos o método Response.Redirect com a seguinte sintaxe: - Response.Redirect(url). Exemplos: - Response.Redirect(“default.aspx”); - Response.Redirect(“http://www.google.com”); - Response.Redirect(“~/site/default.aspx”); Aplicações Cliente-Servidor - ASP.NET: linguagem server-side. - Página é carregada. - Como “mandar” informações para as páginas: • Login • Cadastro Métodos de Envio de Informação GET: • Valores são enviados junto ao endereço da página: http://www.site.com?nome=Aluno&semestre=5 • • Recuperados via QueryString. Limite de tamanho da cadeia de informações. Enviando e recuperando informações via GET no ASP.NET Criar duas novas páginas: • defaultGet.aspx • retornoGet.aspx Na página defaultGet.aspx adicionar os seguintes controles: • TextBox: ID=”txtNome” • Button: no evento Click adicionar o seguinte código: Enviando e recuperando informações via GET no ASP.NET protected void Button1_Click(object sender, EventArgs e) { string nome = txtNome.Text; Response.Redirect("retornoGet.aspx?nome="+nome); } • • Na página retornoGet.aspx adicionar o seguinte comando no evento Page_Load: Response.Write(Request.QueryString["nome"]); Request.QueryString - Método que retorna o conteúdo da variável enviada via GET na página. - Na página passamos a variável na forma: nomevariavel=valorvariavel. - Na recuperação da informação enviada passamos para o método o nome da variável e o método retorna o conteúdo da mesma. Enviando e recuperando informações via POST no ASP.NET Criar duas novas páginas: - defaultPost.aspx - retornoPost.aspx Na página defaultPost.aspx adicionar os seguintes controles: - TextBox: ID=”txtNome” - Button: propriedade PostBackUrl="retornoPost.aspx" Enviando e recuperando informações via POST no ASP.NET No Page_Load da página retornoPost adicionar o seguinte código: Response.Write(Request.Form["txtNome"]); Request.Form - Método que retorna o conteúdo dos dados enviados via POST na página. - Na página que envia os dados definimos um ID para os Web Controls.: - Na recuperação da informação enviada passamos para o método o id do controle e o método retorna o conteúdo da mesma. StringBuilder Classe que permite que se trabalhe de uma forma mais otimizada com concatenação de seqüência de caracteres. String – cada interação cria um novo objeto na memória. Pertence ao namespace System.Text Usando Listas de Objetos Para manipularmos listagem de Registros o C# provê a classe List. Permite criar e manipular uma lista de registros de mesmo tipo. Sintaxe: List<Tipo> lista = new List<Tipo>; A Linguagem C# Foreach O foreach é uma nova estrutura que permite iterar por uma coleção sem se preocupar com o tamanho dela.