static property in c# 6
<p>I'm writing a small code to more understand about <code>property</code> and <code>static property</code>. Like these:</p>

<pre><code>class UserIdentity
{
    public static IDictionary&lt;string, DateTime&gt; OnlineUsers { get; set; }
    public UserIdentity()
    {
        OnlineUsers = new Dictionary&lt;string, DateTime&gt;();
    }
}
</code></pre>

<p>or</p>

<pre><code>class UserIdentity
{
    public IDictionary&lt;string, DateTime&gt; OnlineUsers { get; }
    public UserIdentity()
    {
        OnlineUsers = new Dictionary&lt;string, DateTime&gt;();
    }
}
</code></pre>

<p>Since I changed it to:</p>

<pre><code>class UserIdentity
{
    public static IDictionary&lt;string, DateTime&gt; OnlineUsers { get; }
    public UserIdentity()
    {
        OnlineUsers = new Dictionary&lt;string, DateTime&gt;();
    }
}
</code></pre>

<p>it gave me error message:</p>

<blockquote>
  <p>Property or indexer 'UserIdentity.OnlineUsers' cannot be assigned to -- it is read only</p>
</blockquote>

<p>I knew the property <code>OnlineUsers</code> was <code>read only</code>, but in C# 6, I can assign it via constructor. So, what am I missing?</p>