I\'ve recently used LINQ
In the following code:
ArrayList list = new ArrayList();
var myStrings = list.AsQueryable().Cast();
The only effect the use of AsQueryable() has here is to make the static type of the result of the query is IQueryable. For all intents and purposes, this is really useless on an object.
You only really need:
var myStrings = list.Cast();
without the AsQueryable(). Then the type of the result is just IEnumerable.
Or better yet, to get a strongly typed List:
var myStrings = list.Cast().ToList();