Archive for c#

Comparação de performance entre LINQ, ADO.NET e C# tradicional

Hoje encontrei um interessante artigo no CodeProject onde o autor faz alguns testes comparando a performance do LINQ com a do ADO para interações com base de dados e com arquivos XML. no artigo ele também faz uma comparação de performance entre o LINQ, o C# tradicional, e o C# 3.0 trabalhando com Arrays.

Vale muito a pena a leitura, pois o autor compara as tecnologias em diversas situações diferentes, explica como claramente como o teste foi realizado e ainda disponibiliza os arquivos fontes para download.

Link para o artigo: http://www.codeproject.com/KB/linq/performance_comparisons.aspx

Comments

Date Format with Culture Info

 Essa semana tive problemas com comparação de datas em um ambiente multi cultura (multi idioma).

O contexto era o seguinte:

O usuário poderia usar o sistema em várias culturas, dentre elas inglês, português e italiano.

Em inglês e português a formatação de datas funcionava normalmente, porém em italiano era adotado outro formato.

Consegui resolver o problema usando a sobrecarga do ToString(IFormatProvider provider)

Um exemplo do problema seguido da solução clicando na imagem abaixo.Date Format with Culture Info

Os arquivos do exemplo podem ser baixados aqui.

Comments

Upload de Arquivos em ASP.NET 2.0

Upload de Arquivos em ASP.NET 2.0

Como muitos já devem ter percebido, o framework 2.0 traz ainda mais facilidades para o desenvolvedor, deixando tarefas rotineiras menos trabalhosas.

Para começarmos criaremos um projeto WEB no Visual Studio 2005 (ou mesmo no Visual Web Developer).

Criando novo projeto Web no Visual Studio 2005

Agora iremos definir o tipo de projeto, a pasta e a linguagem conforme mostra a figura a seguir.

Criando novo projeto Web no Visual Studio 2005

Feito isso, o Visual Studio automaticamente cria uma página Default.aspx com os componentes mínimos para a aplicação.Agora vamos inserir os controles necessários para realizar o upload:

  • FileUpload
  • Button
  • Label

Insira os elementos no webform de modo que obtenha o seguinte aspx:

Modo Design:

Web Form - Modo Degign

Modo Source:

Web Form - Modo Source

Com o Visual Studio em modo design de um duplo click sobre o botão salvar. O Visual Studio irá apresentar o Classe do seu web form, já criando o método que será disparado quando o usuário clicar sobre o botão salvar.

Método Salvar

É aqui que faremos a codificação necessária para o upload do arquivo, conforme a imagem a seguir:

Código para upload de arquivos

Entendendo o código:

Com a clausula if (FileUpload1.HasFile) verificamos se foi enviado algum arquivo. Caso esta clausula seja contemplada o arquivo é salvo através do método FileUpload1.SaveAs(”C:\\temp\\” + FileUpload1.FileName); e é exibida uma mensagem ao usuário informando o nome, tamanho e tipo do arquivo. Caso contrário, será exibida uma mensagem informando que nenhum arquivo foi selecionado.

Com o uso dos elementos try e catch podemos capturar qualquer erro que ocorra durante a operação. e caso ocorra algum erro ele é exibido ao usuário (lblResultado.Text = “ERRO: ” + ex.Message.ToString();)

Um erro comum em aplicações com upload é a falta de permissão de escrita na pasta onde será gravado o arquivo, verifique se a pasta que pretende fazer o upload possui permissão de escrita.

Artigo de minha autoria, publicado tambem em no devmedia

Comments