title: DbSet mock, no results while calling ToList secondly
body: <p>I'm trying to mock DbContext and DbSet. This works for my previous unit tests, but problem occurs while my code was calling ToList method on DbSet second time.</p>
  
  <p>First dbSet.ToList() returns mocked results.
  Second one returns 0 elements;</p>
  
  <pre><code>       var queryableData = new List&lt;string&gt;{ "a", "b", "c" }.AsQueryable();
  
          var mockDbSet = new Mock&lt;DbSet&lt;string&gt;&gt;();
          var q = mockDbSet.As&lt;IQueryable&lt;string&gt;&gt;();
          q.Setup(m =&gt; m.Provider).Returns(queryableData.Provider);
          q.Setup(m =&gt; m.Expression).Returns(queryableData.Expression);
          q.Setup(m =&gt; m.ElementType).Returns(queryableData.ElementType);
          q.Setup(m =&gt; m.GetEnumerator()).Returns(queryableData.GetEnumerator());
  
          DbSet&lt;string&gt; dbset = mockDbSet.Object;
          IQueryable&lt;string&gt; query = dbset;
  
          //RESULTS: abc
          var a1 = dbset.ToList();
          foreach (var a in a1)
              Console.Write(a);
  
          //NO RESULTS
          var a2 = dbset.ToList();
          foreach (var a in a2)
              Console.Write(a);
  </code></pre>