Mega Code Archive

 
Categories / C# / LINQ
 

Convert an ArrayList to an IEnumerableT That Can Be Used with the Typical Standard Query Operators

using System; using System.Linq; using System.Collections; using System.Collections.Generic; public class Employee {     public int id;     public string firstName;     public string lastName;     public static ArrayList GetEmployeesArrayList() {         ArrayList al = new ArrayList();         al.Add(new Employee { id = 1, firstName = "J", lastName = "R" });         al.Add(new Employee { id = 2, firstName = "W", lastName = "G" });         al.Add(new Employee { id = 3, firstName = "A", lastName = "H" });         al.Add(new Employee { id = 4, firstName = "D", lastName = "L" });         al.Add(new Employee { id = 101, firstName = "K", lastName = "F" });         return (al);     }     public static Employee[] GetEmployeesArray() {         return ((Employee[])GetEmployeesArrayList().ToArray(typeof(Employee)));     } } public class MainClass {     public static void Main() {         ArrayList employees = Employee.GetEmployeesArrayList();         Console.WriteLine("The data type of employees is " + employees.GetType());         var seq = employees.Cast<Employee>();         Console.WriteLine("The data type of seq is " + seq.GetType());         var emps = seq.OrderBy(e => e.lastName);         foreach (Employee emp in emps)             Console.WriteLine("{0} {1}", emp.firstName, emp.lastName);     } }