Obrigado por visitar a devmedia.com.br!

Precisamos de você para divulgar nossos vídeos e cursos gratuitos para a comunidade.

Se você gosta da devmedia.com.br por favor dê-nos o seu clique para o Google+ e ajude outros desenvolvedores ao redor do mundo.



Obrigado por seu apoio!
Equipe DevMedia

sair sem compartilhar (x)
DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:

Dicas: C# 3.0/3.5 - Anonymous Types

Para facilitar o desenvolvimento na versão 3.0/3.5 do C# podemos utilizar um tipo anônimo, mas a final o que seria isso ?! Simples, o tipo anônimo é um encapsulamento de propriedades em um único objeto sem ter que definir explicitamente o tipo,

Para facilitar o desenvolvimento na versão 3.0/3.5 do C# podemos utilizar um tipo anônimo, mas a final o que seria isso ?! Simples, o tipo anônimo é um encapsulamento de propriedades em um único objeto sem ter que definir explicitamente o tipo, o nome é gerado pelo compilador e não esta disponível a nível de código fonte (intellisense), em outras palavras imagine uma classe que é construída automaticamente pelo compiler (lembra os tipos dinâmicos do Framework 4.0, porém não é a mesma coisa.)

Para declarar um objeto do tipo dinâmico basta apenas utilizar a palavra chave new acompanhada das propriedades que você quer inserir no objeto veja um exemplo abaixo.

var person = new { Name = "Nelson", Age = 23 };

 

                Para fixar melhor, vamos criar um exemplo.

1-) Crie um projeto do Windows Form com o nome de AnonymousTypes.

2-) Adicione no seu projeto uma nova classe chamada pessoa, e dentro desta classe defina 3 propriedades, sendo elas: Nome, SobreNome e posteriormente crie um método para retornar uma lista da classe pessoa.

namespace AnonymousTypes

{

    public class Pessoa

    {

        public string Nome { get; set; }

        public string SobreNome { get; set; }

        public IEnumerable<Pessoa> RetornaListaPessoas()

        {

            List<Pessoa> listaPessoas = new List<Pessoa>()

            {

                new Pessoa(){Nome="Nelson", SobreNome="Borges"},

                new Pessoa(){Nome="João", SobreNome="Augusto"},

                new Pessoa(){Nome="Vitor", SobreNome="Hugo"},

                new Pessoa(){Nome="Almir", SobreNome="Sater"}

            };

            return listaPessoas;

        }

    }

}


3-) Dentro do Form1, crie um evento do Load do formulário e insira o seguinte código:

private void Form1_Load(object sender, EventArgs e)

{

            foreach(Pessoa p in new Pessoa().RetornaListaPessoas())

            {

                var pessoaAnonymousTypes = new

                {

                    NomeCompleto = p.Nome + " " + p.SobreNome

                };

                MessageBox.Show(pessoaAnonymousTypes.NomeCompleto);

            }

}

 Repare que neste código estamos criando um tipo anônimo (pessoaAnonymousType) e este objeto possui uma propriedade chamada NomeCompleto que é a concatenação do Nome e SobreNome da classe pessoa.

                O interessante desta feature é a possibilidade de usar em conjunto com o Linq, para saber mais acesse: http://msdn.microsoft.com/en-us/library/bb397696.aspx, no meu blog também contém esta e outras dicas que estou escrevendo sobre o C#, para saber mais clique aqui

Abs,            





    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!



[Este post ainda não foi associado a uma sequência]
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]
Este post está disponível somente para quem possui Créditos DevMedia. (Ele não está associado a nenhuma publicação DevMedia).


  Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!

Plano conveniência – Neste plano este post custa R$ 0,00 (Compre agora)
Esse plano permite que você compre somente um post, pagando por ele seu preço sem desconto.

Plano ocasional: Aqui este post custa: R$ -1,00 (assinante) ou R$ -1,00 (não-assinante)
Este plano é ideal para quem tem interesse em mais de um post. Você compra um mínimo de R$ 50,00 em créditos e ganha, em média, 50% de desconto no preço do post. Compre Créditos agora!

Assinatura de Créditos (Plano econômico) – Aqui este post custa R$ -1,00
Este plano é ideal para quem tem interesse em muitos posts. Com esse plano você compra R$ 180,00 em créditos e ganha, em média, 80% de desconto no preço do post. Assine este plano agora!

> Saiba mais sobre o Sistema de Créditos DevMedia
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03