Welcome to GASP Sign in | Join | Help

Paulo Morgado

Tudo sobre Arquitectura de Software

Localização dos Visitantes

  • Localização dos Visitantes

Livros

  • LINQ com C#

Eventos

Renûncia

As opiniões e pontos de vista expressos neste sítio são minhas e podem não reflectir as da Microsoft, do meu empregador, ou de qualquer comunidade a que pertença. Qualquer código ou opinião é oferecido sem qualquer garantia. Os produtos ou serviços mencionados são comprados por mim, disponibilizados pelo meu empregador ou pelo fabricante/vendedor o que não influencia em nada a minha opinião.

Browse by Tags

All Tags » .NET3.5   (RSS)
Hidratando Objectos Usando Árvores De Expressões - Parte III
Para finalizar esta série acerca da hidratação de objectos, vou mostrar algumas comparações de performance entre os diferentes métodos de hidratação de objectos. Para os efeitos deste exercício vou usar esta classe: class SomeType { public int Id { get Read More...
Hidratando Objectos Usando Árvores De Expressões - Parte II
Na minha entrada mostrei como hidratar objectos criando instâncias e afectando propriedades dessas instâncias. Mas, se a intenção é hidratar objectos partir de dados, porque não ter uma expressão que faz isso mesmo? É para isso memos que serve a expressão Read More...
Torne-se Um Especialista Em Árvores De Expressões Com O .NET Reflector
No seguimento da minha última entrada , recebi muitas questões acerca de como me tinha tornado um especialista na criação de árvores de expressões . A resposta é: .NET Reflector Naquela entrada eu precisava de gerar uma árvore de expressões para esta Read More...
Despejando Objectos Usando Árvores De Expressões
Um colega perguntou-me se eu conhecia alguma forma de despejar uma lista de objectos para uma DataTable com melhor performance que a que ele estava a usar. Os objects a serem despejados têm, geralmente, mais de uma dúzia de propriedades, mas, para os Read More...
C# 4.0: Argumentos Com Nome E Opcionais
Como parte do esforço de co-evolução do C# e do Visual Basic , o C# 4.0 introduz Argumentos com Nome e Opcionais . Primeiro clarifiquemos o que são argumentos e o que são parâmetros : Os parâmetros da definição de um método são as variáveis de entrada Read More...
LINQ: Melhorando Distinct Com O SelectorEqualityComparer
Na minha última entrada apresentei o PredicateEqualityComparer e um método de extensão Distinct recebe um predicado e cria internamente um PredicateEqualityComparer para filtrar elementos. Usar o predicado melhora a legibilidade, concisão e expressividade Read More...
LINQ: Melhorando Distinct Com O PredicateEqualityComparer
Hoje estava a escrever um consulta LINQ e necessitava de seleccionar valores distintos baseado num determinado critério de comparação. Felizmente, o método Distinct do LINQ permite fornecer um comparador de igualdade , mas, infelizmente, muitas vezes Read More...
LINQ: Single vs. SingleOrDefault
Tal como outros métodos da API do LINQ que extraem valores escalares de sequências, o Single tem um correspondente SingleOrDefault . A documentação de SingleOrDefault diz que retorna um único e específico elemento de um sequência de valores , ou um valor Read More...
LINQ: Single vs. First
Já presenciei e estive envolvido em algumas discussões acerca da correcção e utilidade do método Single na API do LINQ . O argumento mais comum é que se está a pedir o primeiro elemento de um conjunto e que será lançada uma excepção se existir mais que Read More...
Globalização de Sítios Web Usando O Roteamento Do ASP.NET
Para quem não sabe, eu tenho um sítio web ( http://PauloMorgado.NET/ ) que uso como presença (além dos meus blogues) na web e para testes. Porque costumo escrever tanto em Português como em Inglês, queria que o sítio tivesse uma versão Portuguesa e uma Read More...
Brincando Com LINQ: Obtendo As Implementações De Propriedades De Interfaces
Hoje, o meu amigo Nuno estava a escrever algum código para obter as PropertyInfo s da implementação de uma interface por parte de classe. Dada este interface: public interface ISomeInterface { int IntProperty { get ; set ; } string StringProperty { get Read More...
Como Atribuír Valores A Elementos De Um Array De Um Tipo Privado Usando Os Acessores Do Visual Studio
O Visual Studio usa a ferramenta Publicize para criar acessores públicos para membros e tipos privados de um determinado tipo. Mas quando se tenta definir o valor de um elemento de um array privado de elementos de um tipo privado, a situação complica-se. Read More...
Extended WebBrowser Control - Versão 0.0.0.0
Finalmente consegui ter uma versão do Extended WebBrowser Control para colocar no CodePlex . Ainda é um trabalho em curso, mas está usável (isto é uma palavra?). Estejam à vontade para descarregar , comentar e registra incidentes . Um tabbed web browser Read More...