Introduction
This article explains the syntax to use collection initializers and query expressions for Dictionary
objects in C# 3.0.
Background
I was learning the new features of C# 3.0. Though the use of collection initializers and query expressions are simple and straight forward in most cases, their use with Dictionary
objects are not well documented. Hence, this article gives a beginner level approach to understanding collection initializers and query expressions with Dictionary
objects.
Using the Code
In the below block of code, a Dictionary
object (currencyCollection
) has been defined. The Key holds an id, and the Value holds different currencies.
Dictionary<int, string> currencyCollection = new Dictionary<int, string> {
{1,"Indian Rupee"},
{2, "United States Dollar"},
{3, "Euro"},
{4, "British Pound"},
{5, "Australian Dollar"},
{6, "Japanese Yen" },
{7,"Indian Rupee"}
};
In the next step, I'm querying the currency "Indian Rupee
" using query expressions. This expression will find out the entries for "Indian Rupee
".
var query = from c in currencyCollection
where (c.Value.Equals("Indian Rupee"))
select c;
Now the variant query has the objects after filtering only "Indian Rupee
". I use a simple foreach
to display the results.
foreach (var ky in query)
Console.WriteLine("{0}, {1}", ky.Key.ToString(), ky.Value);
Points of Interest
Two things which I learnt were as follows:
- How to use collection initializers for
Dictionary
objects.
- How to use query expressions for
Dictionary
objects.
History