using System; using System.Linq; using System.Collections; using System.Collections.Generic; public class Contact { public int Id; public string Name; public static void PublishContacts(Contact[] contacts) { foreach (Contact c in contacts) Console.WriteLine("Contact Id: {0} Contact: {1}", c.Id, c.Name); } } public class Employee { public int id; public string firstName; public string lastName; public static ArrayList GetEmployees() { 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" }); return (al); } } public class MainClass { public static void Main() { ArrayList alEmployees = Employee.GetEmployees(); Contact[] contacts = alEmployees .Cast<Employee>() .Select(e => new Contact { Id = e.id, Name = string.Format("{0} {1}", e.firstName, e.lastName) }) .ToArray<Contact>(); Contact.PublishContacts(contacts); } }