title: EF Core DbDataReader result changing in interceptor
body: <p>guys.</p>
  <p>I have a question about EF Core DbCommandInterceptor.</p>
  <p>Let's have a class with 2 fields like this</p>
  <pre><code>public class User
  {
      public Guid Id { get; set; }
      public string SameData { get; set; }
  }
  
  public class TestClass
  {
     public Guid Id { get; set; }
  
     public Guid TestClassId { get; set; }
     
     [NotMapperd, MyAttr]
     public TestClass TestClass { get; set; }
  }
  </code></pre>
  <p>where <code>User</code> and <code>TestClass</code> are both located in the different contexts (for example, <code>UserDbContext</code>, <code>TestDbContext</code>). <code>MyAttr</code> is the marker attribute, nothing more.</p>
  <p>So, I want to write an interceptor that raises up each time we try to get info about <code>TestClass</code>es, but after data got it should get an additional data about User with cross-request to UserDbContext (It possible, because I have <code>User</code> <code>Id</code> after the command execution and can use this <code>Id</code> in the request)</p>
  <p>I know, that it should be <code>DbCommandInterceptor.ReaderExecuted</code> or <code>DbCommandInterceptor.ReaderExecutedAsync</code> in this case, but I cannot understand how to get information about objects in the result (I can get rows but I cannot understand what should I do, how should I map it). I can use additional libraries in the project if needed (like Dapper and others).</p>
  <p>Could anyone helps me to get</p>
  <ol>
  <li>Result Type - concrete entity type or entity collection type?</li>
  <li>Result as a C# object (POCO or POCO collection)?</li>
  </ol>
  <p>Thank you.</p>