Instantiating and Initializing an Anonymous Type Using Object Initialization

   
 


using System;
public class MainClass {
    public static void Main() {

        var address = new {
            address = "First Street",
            city = "Vancouver",
            state = "GA",
            postalCode = "99999"
        };

        Console.WriteLine("address = {0} : city = {1} : state = {2} : zip = {3}",
         address.address, address.city, address.state, address.postalCode);
        Console.WriteLine("{0}", address.GetType().ToString());
    }
}

    


Anonymous Types

   
 

using System;
using System.Collections.Generic;
using System.Diagnostics;

class MainClass{
    static void DisplayProcesses(Func<Process, Boolean> match) {
        var processes = new List<Object>();
        foreach (var process in Process.GetProcesses()) {
            if (match(process)) {
                processes.Add(new {
                    process.Id, Name = process.ProcessName,
                    Memory = process.WorkingSet64
                });
            }
        }
    }

    static void Main(string[] args) {
        DisplayProcesses(process => process.WorkingSet64 >= 20 * 1024 * 1024);
    }
}

    


Using var

   
 

using System;
using System.Collections.Generic;
using System.Diagnostics;

class MyPC {
    public Int32 Id { get; set; }
    public Int64 Memory { get; set; }
    public String Name { get; set; }
}

class LanguageFeatures {
    static void Main(string[] args) {
        var processes = new List<MyPC>();
        foreach (var process in Process.GetProcesses()) {
            var data = new MyPC();
            data.Id = process.Id;
            data.Name = process.ProcessName;
            data.Memory = process.WorkingSet64;
            processes.Add(data);
        }
        Console.Write(processes);
    }
}

    


Union Operator

   
 

using System;
using System.Linq;
using System.Collections;
using System.Collections.Generic;

public class MainClass {
    public static void Main() {
        string[] presidents = {"ant", "arding", "arrison", "eyes", "over", "ackson"};
        IEnumerable<string> first = presidents.Take(5);
        IEnumerable<string> second = presidents.Skip(4);
        IEnumerable<string> concat = first.Concat<string>(second);
        IEnumerable<string> union = first.Union<string>(second);

        Console.WriteLine("The count of the array is: " + presidents.Count());
        Console.WriteLine("The count of the first sequence is: " + first.Count());
        Console.WriteLine("The count of the second sequence is: " + second.Count());
        Console.WriteLine("The count of the concat sequence is: " + concat.Count());
        Console.WriteLine("The count of the union sequence is: " + union.Count());

    }
}