A pouco tempo atras trabalhei em uma pequena equipe de desenvolvedores e logo no segundo dia surgiu o problema: Como faco pra remover letras repetidas de uma palavra? Esse requisito estava na documentacao. Eu sugeri a solucao do problema utilizando StringBuilder. Ai vai o trecho de codigo que remove letras repetidas (a palavra estando correta ou nao rs).O StringBilder faz parte de: using System.Text nao se esqueca de colocar na sessao dos imports.No Click do botao, adicionar o trecho de codigo abaixo:protected void btnRemover_Click(object sender, EventArgs e) { //Instanciar um objeto da classe StringBuilder StringBuilder sb = new StringBuilder(); //Adicionar a palavra que deseja testar sb.Append(txtPalavra.Text); //Usar um for pra percorrer o texto for (int i = 0; i <> { //Testar se a posicao e 0 pq nao podemos testar 0-1 if (i != 0) { //Comparar as letras para ver se sao iguais if (sb[i] == sb[i-1]) { //Caso sejam iguais usar o metodo remover passando //como parametro o contador do for e a quantidade de letras a ser removida sb.Remove(i, 1); } } } //Escrever na Label a nova palavra lblPalavra.Text = sb.ToString(); }Problema: O que fazer quando a palavra for CARRO??? Se alguem souber! Ajuda! ExerciciosO que diferencia um tipo primitivo de uma classe?Exemplifique atraves de um diagrama de classes dois usos para herancaO que e um tipo de retorno? Todo metodo precisa ter um?Para que servem os pacotes? Ola! Vamos filtrar dados com LINQ?No ultimo post vimos a moleza que e configurar o Entity eutiliza-lo. Nesse post veremos como fazer consultas simples utilizando o LINQ.Utilizando o mesmo projeto do ultimo post, faremos um filtrona colecao* de produtos que faz Bind* na grid de produtos.Como o LINQ faz lembrar bastante o SQL, o Operador que fazfiltro e o Where. Essa e a cara da grid que deixamos no ultimo post e ocodigo. protectedvoid Page_Load(objectsender, EventArgs e) { NORTHWNDEntitiesdc = new NORTHWNDEntities(); gdvProdutos.DataSource = from p in dc.Productsselect p; gdvProdutos.DataBind(); }Vamos fazer um filtro que nos mostre apenas os produtos cujoCategoryID seja igual a 2. Abaixo segue a imagem da tela e o codigo modificadocom o filtro:protectedvoid Page_Load(objectsender, EventArgs e) { NORTHWNDEntitiesdc = new NORTHWNDEntities(); gdvProdutos.DataSource = from p in dc.Products where p.CategoryID == 2 select p; gdvProdutos.DataBind(); }Digamos agora que voce caro leitor precise de apenas algumasdas colunas da classe produtos. Como fazer para selecionar apenas as colunasnecessarias?Lancaremos mao de um recurso chamado de Classe Anonima que,assim como os metodos anonimos, sao criados em tempo de execucao.Criacao de classe anonima:A classe comum e criada assim: Tipo teste1 = new Tipo(){propriedade1 = 1, propriedade2 = 2}Na classe anonima dispensamos a informacao do Tipo apenasinformamos o nome das propriedades e no nosso caso o valor vira do banco dedados.select new { propriedade1, propriedade2, propriedade3}.Essa e a cara da grid apenas com 3 propriedades e o codigo:protectedvoid Page_Load(objectsender, EventArgs e) { NORTHWNDEntitiesdc = new NORTHWNDEntities(); gdvProdutos.DataSource = from p in dc.Products where p.CategoryID == 2 select new {p.ProductName, p.UnitPrice, p.QuantityPerUnit }; gdvProdutos.DataBind(); }Por hoje e so!Espero que tenham gostado e aprendido coisas novas! OrderByOla! VamosAgrupar e Ordenar dados com LINQ????Entaoutilizando os