Usando Dictionary para carregar menu em Windows Form

Neste post vamos usar de forma simples a classe Dictionary do .net Framework, imaginando um o seguinte cenário aonde nosso form principal trabalha com Mdi.
Temos um formulário principal, e no mesmo ele tem um menuStrip responsável a carregar os menus da nossa aplicação, para cada item de menu devemos ficar fazendo instancia para cada form que existir na nossa aplicação.

Exemplo

Leia mais… »

Criando Objetos em Tempo de Execução

Vou explicar de maneira simples e exemplificada sobre criação de objetos em tempo de execução.

Vou mostrar um modelo prático. Imagine a seguinte situação. Você possui um webservice que envia consultas SQL para um cliente feito em Windows Form. Nesse cliente, existirá uma aba para cada consulta com um grid para exibir a consulta.
Imagine o trabalho de ter que adicionar uma aba, um grid, configurar o cabeçalho de cada coluna desse grid? Retrabalho certo?

Como sou preguiçoso, pensei em uma forma mais prática. E que tal se o integrador fosse inteligente a ponto de montar suas próprias abas, com um grid dentro e tudo vier configurado do webservice? Não seria necessário a manutenção no programa cliente caso uma nova consulta fosse adicionada, certo?
Leia mais… »

Como Programar com ASP.NET e C# – Editora Novatec

Recebi essa semana da Editora Novatec um exemplar de um livro na qual já possuia sua 1ª edição. Estou falando da 2ª edição do livro “Como programar com ASP.NET e C#” do autor Alfredo Lotar.

Para você que esta aprendendo C# e que focar seu aprendizado em ASP.NET ele é um excelente livro. Diferente de sua 1ª edição, ele aborda a versão mais atual do ASP.NET e C# que estão na versão 4.0.

Diferente dos outros livros que já tive, o da Editora Novatec e em especial do Alfredo Lotar são muito didádicos, apresentam vários exemplos, códigos, tutoriais, dicas, truques além de serem bem ilustrados. Ideal para você iniciante ou até mesmo para os que já estão familiarizados com a linguagem e pretendem se atualizar.

Para nós que já estamos envolvidos com ASP.NET e C# desda versão anterior, é uma otima opção para se atualizar e aprender os novos recursos disponiveis como: Entity Framework, roteamento de URLs, LINQ, etc.

Leia mais… »

CShared #1 – [C#] Contagem de dias úteis entre duas datas.

Dando inicio a série de postagens com dicas úteis, códigos simples e funcionais que durante o dia-a-dia do desenvolvedor podem ser necessárias.
Hoje vou deixar uma função que pode ajudar bastante, ela conta quantos dias úteis existem entre duas datas, melhor dizendo em um período e a principio sem considerar feriados. Claro que apesar de não ter feriados é possível que você estenda esta ideia e incluir na lógica para não contar feriados também, por exemplo, ter um cadastro com os feriados e dias não trabalhados e ir consultando por uma lista com LINQ (find).
Segue o método:


        public int GetDiffDays(DateTime initialDate, DateTime finalDate)
        {
            int days = 0;
            int daysCount = 0;
            days = initialDate.Subtract(finalDate).Days;

            //Módulo 
            if (days < 0)
                days = days * -1;

            for (int i = 1; i <= days; i++)
            {
                initialDate = initialDate.AddDays(1);
                //Conta apenas dias da semana.
                if (initialDate.DayOfWeek != DayOfWeek.Sunday && 
                    initialDate.DayOfWeek != DayOfWeek.Saturday)
                    daysCount++;
            }
            return daysCount;
        }

Por hoje é isso, simples assim. “Quem complica se estrumbica”.
Aproveitando, caso você queria algum tópico escreva e deixe a sua sugestão.
Siga-me no twitter: @thiagosatoshi

“A mente que se abre a uma nova idéia jamais voltará a seu tamanho original.” – Albert Einstein

Imagens no Reportviewer 2010

Olá leitor. Após um questionamento de um amigo feito na semana passada, sobre como apresentar imagens no ReportViewer de um banco de dados, chego a este post. O processo de salvar consultar os dados da aplicação/banco de dados não mencionarei (o foco é apenas do relatório com imagens), mostrarei como apresentar imagens a partir de uma classe no relatório. Utilizarei o Microsoft Visual Studio 2010, .Net Framework 4.0, ReportViewer desta versão e o mesmo será feito em Windows Forms, mas a ideia pode ser expandida para web facilmente.
Vale lembrar que este post tem como objetivo apenas mostrar como fazer o relatório, portanto a estrutura das classes para pesquisa, lógica, etc. será forjada e estará em apenas um projeto. Isso para facilitar, frisando que não é uma boa prática.

Leia mais… »

Observer

Antes de falar do Observer é necessário entender o que é Design Pattern, ou padrão de desenho de software, eles descrevem soluções para problemas recorrentes no desenvolvimento de sistemas que utilizam a O.O. – Orientação a Objetos. Um padrão define um problema, a solução deste problema, a situação onde aplicar esta solução e suas conseqüências e o nome deste.

Leia mais… »

Manipulando arquivos Excel sem uso da interoperabilidade ou conexão OLEDB

Como é de costume, sempre compartilho a minhas experiências e necessidades do dia a dia com você.

Recentemente tive a necessidade de ler um arquivo Excel em um WebService, porem o servidor na qual está hospedado não possui o Office instalado e nem poderia porque no final das contas seria necessário instala-lo em 3 servidores.

Com isso comecei a procurar por soluções e até que cheguei a solução criada pelo chinês Liu Junfeng que tambem possui uma materia no site do Code Project e seu fonte disponível no Google Code.

Leia mais… »

Vem ai a semana de Interoperabilidade

Olá pessoal, para ajudar um pouco na divulgação, compartilhar e informar aos nossos amigos desenvolvedores, vai ocorrer a semana da Interoperabilidade.

Esse evento abordará assuntos muito interessantes por profissionais da comunidade técnica.
Os eventos ocorrerá entre os dias 18 e 22 de janeiro e terá vários WebCast.

Leia mais… »

Interface amigável e elegante com Krypton Suite

Olá caro leitor. Estou aqui mais uma vez para compartilhar com você das coisas boas que encontramos na internet.

Estava eu por esses dias a procura de um jeito de fazer uma aplicação com um designer mais elegante e amigável que alias não é nada simples quando pensamos pelo lado do usuário. Vi diversos componentes pagos que alias existe diversos e alguns deles que prefiro não citar nome são bons, mais não me agradaram tanto quanto esse que falarei hoje. Esse componente, ou diriamos suite de componentes é o Krypton Suite que se encontra em sua versão 4 da empresa Component Factory.

Leia mais… »

Enviando anexo em e-mail com ASP.NET

Olá pessoa, a pedido de um amigo que recentemente começou programar em ASP.NET com C-Sharp, vou fazer um passo a passo de como enviar e-mail com anexo.

Estou utilizando o Visual Studio 2005, mais quem não tiver poderá usar o Visual Web Developer Express 2005 ou 2008.

Leia mais… »