title: Entity Framework Core: navigation property based collection
body: <p>Let's say we have the following many-to-many relationship scenario in EF Core with following navigation properties:</p>
  <pre><code>public class Request{
  
      public HashSet&lt;User&gt; Users { get; set; }
  }
  </code></pre>
  <pre><code>public class User{
  
      public HashSet&lt;Request&gt; Requests { get; set; }
  }
  </code></pre>
  <p>A user may be simply assigned to many requests and a request may have many users.</p>
  <p>Now, I would like to extend the functionality so every user is able to flag the requests he is assigned to:</p>
  <pre><code>public class User{
  
      public HashSet&lt;Request&gt; Requests { get; set; }
      public Dictionary&lt;long, bool&gt; RequestsFlags { get; set; } //Request ID (long) and Flag (bool)
  }
  </code></pre>
  <p>This way I can check for which request the flag is set and update the UI accordingly. The problem is that of course these 2 collections would have to always be synchronized with each other.</p>
  <p>Is there any way to ensure that custom collection is always in line with navigation property?</p>