Exceptions (Exceções) do .NET Framework

Qual programador não se deparou com um erro que não estava previsto ocorrer em sua aplicação? Como por exemplo, quando atualizamos nossa aplicação e em um determinando clique ocorrer um ArgumentException ou então em um determinado calculo ocorrer um DivideByZeroException.

Com o objetivo de facilitar a vida dos iniciantes que esse artigo irá listar alguns dos Exceptions existente no .NET Framework. Lembrando que poderão existir outros caso você esteja utilizando alguma biblioteca de terceiro como, por exemplo, um provider do Sqlite ou Firebird.

Leia mais… »

Desenvolvendo aplicações em C no Visual Studio 2010

Por questões de necessidade, procurei uma alternativa para utilizar o Visual Studio no desenvolvimento de aplicações em C isso porque estou familiarizado com ele no desenvolvimento em ASP.NET e C#. Com isso para atender a minha necessidade e também por não ter me adaptado em utilizar o CodeBlocks e o Dev-C++ vou passar o caminho a seguir. Vale lembrar que apesar de estar utilizando o Visual Studio 2010 nada lhe impede de utilizar outrar versões.

Leia mais… »

CRUD Com ADO.NET

Depois de ler o comentário do Juliano vou postar um artigo realizando crud com ADO.NET usando SqlDataSource.

Vamos criar um pequeno cadastro de Alunos sem digitar nenhuma linha de código. E você vai observar o poder do visual studio.

Primeiro abra o Visual Studio e crie um novo projeto do tipo ASP.NET Web Application.

Leia mais… »

Crud com Entity Framework fácil parte 2

Bem pessoal hoje vou continuar com o artigo CRUD com Entity Framework.

Hoje vou ensinar como atualizar um cadastro. No decorrer vocês verão como é fácil e sem complicações.

Caso você não tenha visto o primeiro post, sugiro você da uma estudada nele primeiro para poder continuar. Vamos lá!

Leia mais… »

Crud com Entity Framework fácil

Pessoal, este é o meu primeiro post aqui no C# Brasil.

Vou falar sobre como fazer um CRUD com Entity Framework.

Vou usar Visual Studio 2010 junto com o SQL Server Managemente Studio.

O Entity Framework 4 é o framework ORM da Microsoft que transforma objetos de negócio em dados relacionais e vice-versa. O foco do Entity Framework não é o banco de dados mas o modelo de negócios e dessa forma uma de suas tarefas e gerar o modelo conceitual a partir do modelo de banco de dados, feito este serviço o desenvolvedor não tem que lidar mais diretamente com o banco de dados mas com o modelo conceitual e o modelo de entidades.

Leia mais… »

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

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

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 – Adicionar um arquivo CSS dinamicamente em um WebForm

Se você desejar criar um estilo especifico para cada cliente ou deixo escolher um de uma lista, uma dica interessante para fazer isso é altera-lo via codigo dinamicamente.

Basta criar um botão em nosso WebForm e incluir o código abaixo.


System.Web.UI.HtmlControls.HtmlHead header = (System.Web.UI.HtmlControls.HtmlHead)Page.Header;
System.Web.UI.HtmlControls.HtmlLink link = new System.Web.UI.HtmlControls.HtmlLink();
link.Attributes.Add("href", Page.ResolveClientUrl("~/css/estilo.css"));
link.Attributes.Add("type", "text/css");
link.Attributes.Add("rel", "stylesheet");
header.Controls.Add(link);

Aproveitem a dica.

Abraço e até a próxima.