ExpertiDict

C# · Essencial · Inglês · Técnico

anonymous type

/əˈnɑnəməs taɪp/substantivo

Tipo imutável sem nome, criado com new { Prop = valor }. O compilador infere as propriedades, e é usado sobretudo para projetar resultados de consultas LINQ.

Onde usar

Aparece em Select de LINQ para pegar só alguns campos. Como não tem nome, só dá para usar com var e dentro do mesmo método; para devolver o dado, use um record ou uma tupla.

Em código

var p = new { Nome = "Ana", Idade = 30 };
Console.WriteLine(p.Nome);
// p.Idade = 31;  // erro: somente leitura
var q = new { Nome = "Ana", Idade = 30 };
Console.WriteLine(p.Equals(q)); // True

Exemplos

I projected the query into an anonymous type.

Projetei a consulta em um tipo anônimo.

You can't return an anonymous type from a public API.

Não dá para devolver um tipo anônimo em uma API pública.

Cuidado

Não tente alterar as propriedades depois: elas são somente leitura.

Sinônimos

tipo anônimo

Veja também

Todos os termos de C#