Hoje, por incrível que pareça, poucas pessoas utilizam Tipo Anonimo e expressões lambdas. bem como, não utilizam as vantagens do Linq, e não estou dizendo do LinqToSql, mas sim do Linq To Objects Linq To XML. Neste artigo vou mostra que podemos criar de forma muito simples (e performática) a criação de tipos anônimos e como recupera-los.

       Vamos supor que você queira passar uma estrutura para o um método com 3 parâmetros. Vamos fazer isso com um tipo anonimo.

Criação do objeto do Tipo Anonimo.

object InformacoesCliente = new 
{
Idade = 27,
NomeCliente = "Alexandre Minato",
Ativo = true,
Site = "www.alexandreminato.com.br"
};

Beleza, agora como recuperar? Por reflection. Óbviamente você poderia cria rum método para devolver o tipo, mas, vamos fazer isso de uma forma simples:

public void IncluirInformacoes(object Parametros)
{

string NomeCliente = (string)Parametros.GetType().GetProperty("NomeCliente").GetValue(Parametros, null);
int Idade = (int)Parametros.GetType().GetProperty("Idade").GetValue(Parametros,null);
bool Ativo = (bool)Parametros.GetType().GetProperty("Ativo").GetValue(Parametros,null);

}

 

Vamos ver o que aconteceu? Notem que só estou passandro um parâmetro do tipo object !

anonimo

Agora, vejam o tipo do parâmetro.

tip

Muito bom né?

Até a próxima

Minato. 8-)