0
0
CsharpConceptBeginner · 3 min read

What is Anonymous Type in C#: Simple Explanation and Example

An anonymous type in C# is a simple way to create an object without explicitly defining a class. It lets you group related values together with automatically generated properties, useful for quick, temporary data structures.
⚙️

How It Works

Imagine you want to carry a small package of information without making a full box (class) for it. An anonymous type is like a quick, custom-made package that holds named values together. You create it on the spot, and C# automatically builds the structure for you behind the scenes.

When you write code to create an anonymous type, you use curly braces with property names and values. The compiler then creates a class with those properties, but you never have to name or write that class yourself. This is handy when you just need to group some data temporarily, like when sorting or filtering lists.

💻

Example

This example shows how to create an anonymous type with two properties and print them.

csharp
var person = new { Name = "Alice", Age = 30 };
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
Output
Name: Alice, Age: 30
🎯

When to Use

Use anonymous types when you need a quick way to group data without creating a full class. They are perfect for temporary data in queries, like selecting specific fields from a list or database. For example, when you want to display a list of names and ages but don't need a full person class, anonymous types save time and keep code simple.

However, they are limited to the method where they are created and cannot be returned from methods easily, so use them mainly for short-term, local data grouping.

Key Points

  • Anonymous types are created using new { } with property names and values.
  • The compiler generates a class automatically with read-only properties.
  • They are useful for temporary data grouping, especially in LINQ queries.
  • Anonymous types cannot have methods or be returned easily from methods.

Key Takeaways

Anonymous types let you create simple objects without defining a class.
They are great for grouping temporary data quickly and easily.
Use them mainly inside methods for short-term data handling.
Properties in anonymous types are read-only and set at creation.
Ideal for selecting specific data fields in queries or local use.