Dica Rápida: Fluxo de Aprendizado para Iniciantes

Olá pessoal, esta dica rápida foi enviada pelo meu amigo Alfredo Lotar, escritor dos livros Como Programar com ASP.NET e C# e Programando com ASP.NET MVC, 2 grandes sucessos de vendas.

Ele me mandou uma lista que, para ele, é a sequencia ideal de aprendizado para o cara iniciante que deseja ser um Programador.

Segue abaixo a lista, caso queiram opinar ou discordar, comentem no post.

1) HTML

2) CSS

3) Curso ou Livro de lógica de programação

4) JavaScript

5) HTML DOM

6) DHTML (opcional para alguns)

7) Jquery

8) Ajax

9) SQL Server, MySql, Oracle, etc

10) C# e/ou VB.NET

Leia o resto deste post

Videoaula – QueryString

Olá pessoal, acabei de publicar no YouTube um vídeo sobre QueryString, cumprindo o que eu disse neste post, de transformar artigos de minha autoria em videoaulas simples.

Segue abaixo o vídeo, não deixem de se inscrever em meu canal do YouTube, clicando aqui.

Para ver o artigo que originou este vídeo clique aqui.

É isso aí, se gostaram comentem no vídeo ou por aqui mesmo.

Abraços.

Atualizando os Dados – Editando Dados no GridView – Parte 3

Olá pessoal, neste artigo será dado continuidade ao projeto criado para editar dados do GridView, em ASP.NET, utilizando a linguagem C#. Acompanhem:

Se você não viu as partes anteriores, clique aqui para vê-las.

 Já temos feito o carregamento dos dados e passagem via QueryString do ID do produto para a página de detalhes, onde é recuperado esse ID, feito uma consulta no banco e retornado os valores para os TextBoxes.

Adicione a esta página um botão, dando a ele o ID btnAlterarValores. Agora vá a página de códigos e crie uma variável que será a propriedade que irá armazenar o ID do produto, no momento em que essa página for chamada. Dessa forma utilizaremos o conceito de ViewState. A Listagem 01 ilustra a criação dessa propriedade.

Listagem 01 – Propriedade IdProduto, usando ViewState


public Int32 IdProduto

{

get

{

if (ViewState["IdProduto"] != null)

return Convert.ToInt32(ViewState["IdProduto"]);

return 0;

}

set

{

ViewState["IdProduto"] = value;

}

}

Note que é usado o get e o set, já que a utilizo para retornar e atribuir valor.

Leia o resto deste post

Exemplo Prático – Editando Dados no GridView – Parte 2

Olá pessoal, neste artigo será dado continuidade ao projeto criado para editar dados do GridView, em ASP.NET, utilizando a linguagem C#. Acompanhem:

Voltando de onde paramos, renomeie sua página para Produtos.aspx arraste para a página o controle GridView. Nele, altere suas configurações para que fique parecido com o da Listagem 01.

Listagem 01 – GridView de Produtos


<asp:GridView ID="grdDados" runat="server" AutoGenerateColumns="false" OnRowCommand="grdDados_RowCommand">

<Columns>

<asp:BoundField DataField="ProductName" HeaderText="Produto" />

<asp:BoundField DataField="UnitPrice" HeaderText="Preço Unitário" />

<asp:BoundField DataField="UnitsInStock" HeaderText="Unidades em Estoque" />

<asp:TemplateField>

<ItemTemplate>

<asp:Button ID="btnEditar" runat="server" CommandName="Editar" Text="Editar Dados"

CommandArgument='<%# DataBinder.Eval(Container.DataItem, "ProductID")%>' />

</ItemTemplate>

</asp:TemplateField>

</Columns>

</asp:GridView>

A propriedade AutoGenerateColumns deve receber o valor False para que possamos colocar no GridView as tags BoundField, que são simples “containers” de exibição dos dados vindos do banco, enquanto que dentro das tags TemplateField e ItemTemplate conseguimos colocar qualquer tipo de controle ASP.NET e/ou HTML.

Leia o resto deste post

Criação do Projeto – Editando Dados no GridView – Parte 1

Olá pessoal, neste artigo será criado um projeto para editar dados do GridView, em ASP.NET, utilizando a linguagem C#. Acompanhem:

 Introdução – Em projetos de software, sejam pessoais ou profissionais, é normal que tenhamos a situação em que precisamos ver uma lista de dados e, ao clicar em cada registro desta lista, vermos os detalhes da mesma, em uma nova página. Como essa tarefa já é algo mais do que normal em nossa área (se você ainda não precisou fazer isso, um dia irá precisar!) decidi fazer este artigo, também devido a alguns pedidos dos leitores deste blog.

Veremos alguns conceitos de ADO.NET, ViewState, QueryString, ASP.NET e C#, para dúvidas postem nos comentários e não deixem de pesquisar nos links.

 Crie um projeto em ASP.NET. Para este exemplo usarei o banco de dados Northwind, da Microsoft. Caso não o tenha instalado, clique aqui para baixa-lo e siga as instruções de como instalá-lo neste artigo. A tabela que será usada para este exemplo é a Products.

Após instalar o banco e configurar a conexão com o Visual Studio, abra o Web.config e adicione uma chave, responsável por conter a string de conexão com o banco de dados, ilustrado na Listagem 01.

Listagem 01 – String de conexão adicionada ao Web.config

Leia o resto deste post

Consultório em Windows Forms, com C# e SQL Server – Parte 17

Olá pessoal, depois de mais uma longa pausa voltaremos a dar continuidade à série de artigos do Consultório em Windows Forms. Se você não viu as 16 partes anteriores, recomendo que as veja clicando aqui.

Nesta parte será codificado o método ConfigurarRelatorio, criado na parte 16 e serão feitos os testes práticos, abrindo o relatório de acordo com a opção escolhida pelo usuário.

Relembrando, estamos criando um formulário que será o preview de todos os relatórios do sistema, dessa forma devemos indicar a fonte de dados de cada relatório específico, de acordo com o parâmetro passado pelo usuário ao formulário.

Antes de qualquer coisa devemos criar dois novos relatórios, para a Listagem e para a Ficha de Pacientes. Você deve estar se perguntando o porquê disso, visto que já temos relatórios para isso. A questão é que os relatórios existentes utilizam o DataSet antigo, de consulta, que usávamos nas partes anteriores. Como mudamos para o DataSet de Relatórios é necessário criar novos ReportViewer e adicionar as colunas deste DataSet.

A Figura 01 ilustra a View de Paciente que iremos usar nos novos relatórios, que se chamarão, respectivamente, rptListagemPacientes e rptFichaPacientes. O design deles continuarão idênticos aos dos relatórios antigos.

Leia o resto deste post

Métodos Split e IndexOf: Mais Métodos da Classe String

Olá pessoal, neste artigo veremos dois métodos que julgo importante conhecermos, da classe String, que não foram abordados na série de artigos que publiquei aqui no blog, a um tempo atrás. Acompanhem:

 Os métodos Split e IndexOf são muito importantes, na época da publicação dos 10 métodos que julgava os mais importantes acabei me esquecendo desses dois. Então vamos a eles, com o foco especial no método Split.

 Split – O Split é usado para dividir uma string em pequenos pedaços. Para isso, seu método retorna um array de strings, contendo as respectivas partes, definidas de acordo com a string passada como parâmetro, que na verdade funciona como o “agente” divisor da mesma.

De uma forma resumida pense na string “micro-ondas” (sim, a nova regra ortográfica fez isso conosco!). Supondo que desejamos dividi-la pelo hífen, teríamos que fazer a implementação ilustrado na Listagem 01, feita em um Console Application.

Listagem 01 – Método Split

Leia o resto deste post

Percorrendo Registros do GridView, em ASP.NET com C#

Olá pessoal, neste artigo demonstro como percorrer registros de um GridView, um a um, em ASP.NET, utilizando a linguagem C#. Acompanhem:

 Introdução – Em determinadas situações precisamos percorrer os registros do GridView, um a um, sem utilizar a paginação do próprio que engloba grupos de páginas. Uma maneira de se fazer isso é utilizar botões para avançar, retroceder, ir ao primeiro e ao último registro da página.

Para resolver isso podemos criar uma variável que será uma lista genérica, que ficará no ViewState, recuperar os dados que queremos consultar, jogarmos os mesmos nesta lista e a utilizarmos em cada um dos botões citados acima.

Se você não conhece o ViewState sugiro que veja estes artigos.

 A Listagem 01 ilustra a criação da variável citada anteriormente.

Listagem 01 – Lista armazenada no ViewState


public List<Products> listaProdutos

{

get

{

if (ViewState["vwListaProdutos"] != null)

return (List<Products>)ViewState["vwListaProdutos"];

else

return null;

}

set

{

ViewState["vwListaProdutos"] = value;

}

}

Leia o resto deste post

Metas para 2012, você já definiu as suas?

Olá pessoal, começo este post pedindo desculpas pelo tempo que o blog está sem atualizações, esse final de ano foi extremamente corrido  mais já estou planejando muitos posts para 2012.

Como muitos fazem todo final de ano suas metas para o ano seguinte, não poderia deixar de fazê-las também. Acompanhem:

1- Manter o blog atualizado constantemente (o que faço desde Janeiro de 2010, com pequenos deslizes como os dessas últimas semanas), com ao menos 4 posts por semana.

2- Continuar prestando treinamentos em C# e ASP.NET ao pessoal interessado, via Skype e Team Viewer (caso você tenha interesse envie agora mesmo um email para wellingtonbalbo@gmail.com para se informar de valores e horários), e investir na divulgação desse tipo de serviço.

3- Voltar a fazer vídeos para postar em meu canal do Youtube (se não se inscreveu ainda, clique aqui).

4- Reforçar a parceria com a editora Novatec, fazendo análises de livros e sorteando para os leitores do blog, via Twitter.

5- Criar um site pessoal, um portal de vídeos pagos, e outros projetos “secretos”, que serão divulgados ao longo do tempo.

6- Voltar para academia o quanto antes…

7- Comprar games de Xbox 360 (ninguém é de ferro né?).

8- Estudar mais para fazer as provas de certificações Microsoft.

9- Estudar diversos temas que julgo importantes (entenda obrigatórios) um desenvolvedor saber, como Boas Práticas, Design Patterns, Arquitetura de Software, TDD, DDD, MVC, etc.

10- Postar artigos relacionados ao estudos dos itens 8 e 9.

É isso, basicamente esses são minhas principais metas para 2012. E as suas, quais são?

Abraços.

Dica Rápida: Simplificando a Passagem de Parâmetros para um Método

Olá pessoal, nesta dica rápida veremos uma forma elegante para evitarmos a criação de um método com muitos parâmetros, utilizando boas práticas de desenvolvimento.

Já vi (e já fiz) métodos com vários parâmetros, alguns com até dezenas (esses eu só vi!) de parâmetros em sua assinatura. Isso acarreta problemas de legibilidade e manutenção futura.

Para resolver isso é simples: podemos encapsular todos os parâmetros passados para o método em uma única classe (desde que os parâmetros façam parte do mesmo contexto e que cheguem ao mesmo objetivo, para que não criemos uma classe problemática).

A Listagem 01 mostra um método com muitos parâmetros em sua assinatura.

Listagem 01 – Método com N parâmetros


private void Gravar(string Nome, string Endereco, string Telefone, string Bairro, string Cidade, string Estado, bool Ativo, DateTime DataCadastro)

{

//código

}

Leia o resto deste post

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Join 473 other followers