Extension Methods

Extension Methods é uma nova característica presente apartir do C# 3.0 e que permitem adicionarmos métodos para tipos existentes sem criar um novo tipo derivado, recompilar ou modificar o tipo original. Extension Methods são um tipo especial de método estático, mas eles são chamados como se fossem métodos de instância no tipo estendido.

Leia mais… »

C# Brasil de cara nova e com novidades

Desde o lançamento do C# Brasil procuramos sempre deixa-lo o mais agradável possível para que você pudesse sempre visitar e encontrar com maior facilidade o que precisa.

Recentemente nós do C# Brasil e a equipe do Projetos e TI lançamos o fórum e abrimos esse espaço para os leitores interagirem e conhecer mais sobre o assunto que lhe interessa.

Outro lançamento foi a área de download de fontes que anunciamos através do Twitter. Essa área disponibilizaremos para você os fontes de nossos artigos além de outros fontes indicados por leitores e por nós.

Mais uma vez em conjunto com a equipe do Projetos e TI estamos lançando um tema próprio do C# Brasil com o brasão criado por nossa equipe.

Fique por dentro das últimas novidades nos seguindo no Twitter.

Abraço e até a próxima.

Criando eventos personalizados em UserControl no ASP.NET

Nem sempre os componentes atuais do ASP.NET atendem por completo as nossas necessidades. Com isso muitas vezes precisamos implementar funcionalidades e que também na maioria das vezes necessitam ser reutilizadas. O funcionalidade de um UserControl, é essa, criar controles personalizados que possam ser reutilizados.

É esse o objetivo desse artigo de hoje, criar um UserControl que possua funcionalidade que possam ser reutilizadas como se fosse um componente.

Leia mais… »

LINQ – Language Integrated Query

Recentemente recebi a 2ª edição do livro “Como programar com ASP.NET e C#” do autor Alfredo Lotar enviado como cortesia pela Editora Novatec para fazer uma resenha sobre ele. Como já conheço a qualidade do trabalho do Alfredo Lotar então dei inicio ao estudo sobre LINQ que era o meu maior interesse até então.

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 #3 – [Asp.net] Problema de acentuação (Encoding)

Ola pessoal, continuando com a linha de postagens CShared com uma dica simples, porem muito útil.
Quem nunca passou por problemas de acentuação na web? Sabe quando você faz aquela super função que que pega um grid de exporta para um excel, csv, etc. E percebe que todo tipo de acentuação esta errado.
Esta semana ajudei um amigo com esta situação, na verdade testamos varias funções, metodos, charset UTF-8, unicode, etc.
Então vamos ilustrar o cenário, a exportação com o problema de acentuação:
Leia mais… »

CShared #2 – [Asp.net] CalendarExtender problema em display

Olá pessoal, dando seguimento a série CShared. Desta vez com um problema de layout.
Imagine que por algum motivo desconhecido você se depara com a seguinte situação, o componente CalendarExtender esta “misturado” com o outros componentes/divs de layouts/grids.
Um pouco complicado de explicar via texto, portanto veja a imagem:

Problema CSS

Ok. E ai como fazer com que o popup do calendario apareça sobre o grid?
A soução é mais simples do que parece: CSS.
Altere a propriedade z-index, segue um exemplo de css para a page aspx.


        .ajax__calendar_container
        {
            z-index: 1000;
        }

Agora é só dar o refresh na pagina e o resultado será:

CalendarExtender Correção

CalendarExtender Correção

Espero que a dica tenha sido útil.
Até a próxima.

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

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… »

Road Show: Copa Microsoft de Talentos – Ribeirão Preto, SP

Ocorrerá em Ribeirão Preto um evento presencial diferenciado e parte integrante da campanha Copa de Talentos da Microsoft Brasil. Todas as sessões são focadas em demonstrações e explicações feitas ao vivo, utilizando um ambiente de demonstração com os últimos lançamentos da Microsoft. Há apenas uma breve introdução teórica, para entendimento do cenário e depois, o time de Especialistas da Microsoft apresentam ao vivo, na prática, toda a solução sendo implementada passo a passo.

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… »

Dica – Limitando a quantidade caracteres em um TextBox do tipo Multiline

Você já tentou utilizar o MaxLength do TextBox quando esse esta com TextMode igual a MultiLine?

No TextBox o TextMode é uma propriedade na qual definimos o tipo de campo será ele. Existem 3 tipos:

  • SingleLine: após renderizado o HTML, será gerado um simples input do tipo Text;
  • Password: será gerado um input do tipo Password;
  • MultiLine: diferente dos anteriores será gerado um TextArea e esse não possui a propriedade MaxLength.

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… »

Exportando dados do GridView para Excel

No artigo de hoje ensinarei um jeito simples e rápido de implementar em uma página ASP.NET a opção de exportar o conteudo de um GridView contendo informações para o Excel. Isso será feito sem a necessidade de qualquer outro componente.

Essa semana me foi solicitado a criação e disponibilização de uma opção para que o usuário pudesse exportar os dados de um GridView e pesquisando um pouco na internet (porque alias não sei tanta coisa assim de ASP.NET) encontrei a solução.

Leia mais… »