title: How to create an empty IReadOnlyCollection
body: <p>I'm creating an extension method for <a href="http://blogs.msdn.com/b/dotnet/archive/2014/08/05/multidictionary-becomes-multivaluedictionary.aspx">MultiValueDictionary</a> to encapsulate frequent <code>ContainsKey</code> checks and I was wondering what was the best way to create an empty <code>IReadOnlyCollection</code>?.  </p>
  
  <p>What I've used so far is <code>new List&lt;TValue&gt;(0).AsReadOnly()</code> but there must be a better way, an equivilant to <code>IEnumerable</code>'s <code>Enumerable.Empty</code></p>
  
  <pre><code>public static IReadOnlyCollection&lt;TValue&gt; GetValuesOrEmpty&lt;TKey, TValue&gt;(this MultiValueDictionary&lt;TKey, TValue&gt; multiValueDictionary, TKey key)
  {            
      IReadOnlyCollection&lt;TValue&gt; values;
      return !multiValueDictionary.TryGetValue(key, out values) ? new List&lt;TValue&gt;(0).AsReadOnly() : values;
  }
  </code></pre>