Saturday, October 13, 2007 12:32 PM
TanzimSaqib
LINQ: Iterate through collection which implements IEnumerable only
The following works fine in LINQ, because an array implements IEnumerable <T>.
string[] tokenArray = new string[2] { "Hello", "World" };
var tokens = from token in tokenList select token;
foreach (var item in tokens)
Console.WriteLine(item);
But, the collections which do not implement IEnumerable<T> or IQueryable, can not be iterated in LINQ in the same way. To achieve the same, make use of a simple casting trick such as:
ArrayList tokenList = new ArrayList();
tokenList.Add("Hello");
tokenList.Add("World");
var tokens = from string token in tokenList select token;
foreach (var item in tokens)
Console.WriteLine(item);
Filed Under:
LINQ
Anonymous comments are disabled
About TanzimSaqib
Tanzim Saqib is a
Senior Developer, who spent half of his life on software and worked for many companies like #1 .NET controls provider
Telerik Inc, #1 personalized Web 2.0 start-page like
Pageflakes (acquired by LiveUniverse). He developed many projects ranging from banking solutions for Citibank, HSBC, Wamu, Wells Fargo etc. to
Paperless Virtual University. He is industry's earliest and leading widget developer and as know as
"Widget Master" to his peers.
He is a preacher of Microsoft technologies. While he jams with the latest additions to .NET, in his spare time he blogs at
http://weblogs.asp.net/TanzimSaqib, maintains his personal website
http://www.TanzimSaqib.com, leads
.NET Research group. writes articles.
He is an
easy going, fun loving, and
passionate technology individual who is open to any kind of
business opportunity and professional relationship. He currently lives in Bangladesh, but travels anywhere in the world on professional demand.
Email: me at TanzimSaqib dot com