Get a read-only copy of the OrderedDictionary in C#


To get a read-only copy of the OrderedDictionary, the code is as follows −

Example

 Live Demo

using System;
using System.Collections;
using System.Collections.Specialized;
public class Demo {
   public static void Main(){
      OrderedDictionary dict1 = new OrderedDictionary();
      dict1.Add("A", "Books");
      dict1.Add("B", "Electronics");
      dict1.Add("C", "Smart Wearables");
      dict1.Add("D", "Pet Supplies");
      dict1.Add("E", "Clothing");
      dict1.Add("F", "Footwear");
      Console.WriteLine("OrderedDictionary1 elements...");
      foreach(DictionaryEntry d in dict1){
         Console.WriteLine(d.Key + " " + d.Value);
      }
      OrderedDictionary dict2 = new OrderedDictionary();
      dict2.Add("1", "One");
      dict2.Add("2", "Two");
      dict2.Add("3", "Three");
      dict2.Add("4", "Four");
      dict2.Add("5", "Five");
      dict2.Add("6", "Six");
      Console.WriteLine("
OrderedDictionary2 elements...");       foreach(DictionaryEntry d in dict2){          Console.WriteLine(d.Key + " " + d.Value);       }       Console.WriteLine("
Is OrderedDictionary1 equal to OrderedDictionary2? = "+(dict1.Equals(dict2)));       OrderedDictionary orderedDict = dict2.AsReadOnly();       Console.WriteLine("Is OrderedDictionary read-only? = "+orderedDict.IsReadOnly);    } }

Output

This will produce the following output −

OrderedDictionary1 elements...
A Books
B Electronics
C Smart Wearables
D Pet Supplies
E Clothing
F Footwear
OrderedDictionary2 elements...
1 One
2 Two
3 Three
4 Four
5 Five
6 Six
Is OrderedDictionary1 equal to OrderedDictionary2? = False
Is OrderedDictionary read-only? = True

Example

Let us see another example −

 Live Demo

using System;
using System.Collections;
using System.Collections.Specialized;
public class Demo {
   public static void Main(){
      OrderedDictionary dict = new OrderedDictionary();
      dict.Add("A", "Books");
      dict.Add("B", "Electronics");
      dict.Add("C", "Smart Wearables");
      dict.Add("D", "Pet Supplies");
      dict.Add("E", "Clothing");
      dict.Add("F", "Footwear");
      Console.WriteLine("OrderedDictionary elements...");
      foreach(DictionaryEntry d in dict){
         Console.WriteLine(d.Key + " " + d.Value);
      }
      OrderedDictionary orderedDict = dict.AsReadOnly();
      Console.WriteLine("Is OrderedDictionary read-only? = "+orderedDict.IsReadOnly);
   }
}

Output

This will produce the following output −

OrderedDictionary elements...
A Books
B Electronics
C Smart Wearables
D Pet Supplies
E Clothing
F Footwear
Is OrderedDictionary read-only? = True

Updated on: 05-Dec-2019

82 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements