Artigo do tipo Exemplos Práticos
Recursos especiais neste artigo:
Conteúdo sobre boas práticas, Artigo no estilo Mentoring
Cenário
A classe ExpandoObject permite a criação de objetos dinâmicos, adicionando e removendo membros em tempo de execução e neste artigo veremos melhor este recurso e seus benefícios para utilização em nossos projetos. Em conjunto com o suporte dinâmico do framework esta classe é útil para tornar códigos mais legíveis e flexíveis. O seu dinamismo permite a transformação de dados em objetos, facilitando a exibição e controle dos dados.

Em que situação o tema é útil
A criação de objetos com estrutura dinâmica usando a classe ExpandoObejct é útil em situações onde se tem um conjunto de informações que podem ser agrupadas, mas que não levam à necessidade de criação de uma classe para organizá-las. Para estes casos, pode-se criar um objeto único, instância da classe ExpandoObject, e adicionar propriedades e métodos dinamicamente.

A maioria dos códigos escritos em .NET são baseados em tipos estáticos. A tipagem estática oferece um ótimo desempenho, mas é baseada no pressuposto que você sabe quase tudo sobre o seu código (e dados) com antecedência. Hoje em dia com os novos recursos disponíveis, há uma forte tendência a desenvolver códigos genéricos contendo tipagem dinâmica, objetos dinâmicos e programação com a utilização de Reflection (BOX 1).

Nesse artigo será mostrado uma das várias opções que o framework disponibiliza, a classe ExpandoObject, que auxilia o desenvolvimento de aplicações com códigos mais flexíveis.

BOX 1. Reflection

Reflection é um modo pelo qual o programa pode ler as suas próprias informações em tempo de execução. Ou seja, uma forma de obter os métodos, propriedades de um tipo específico e então invocá-los dinamicamente.

...

Quer ler esse conteúdo completo? Tenha acesso completo