title: Issues with entityframework core model snapshot in team environment
body: <p>We are in initial development application of ef core. I am not sure how ef core
  Model snapshot communicates/flows with other components like Migrations and database.I don't know which will first get applied on database either Migrations or Model snapshot and how verifies with migrations under the hood.</p>
  
  <p>My case:</p>
  
  <ol>
  <li>Existing migration &amp; Snapshot  available in TFS(Developer tested &amp; committed 
  Migraton &amp; model snapshot from his system).</li>
  <li>Dev 2 getting latest from his system and pointing to new database without any pending changes.</li>
  <li>when executing <code>update-database</code> he is facing error that column already dropped.</li>
  </ol>
  
  <blockquote>
    <p>ALTER TABLE DROP COLUMN failed because column 'CreatedDateTime' does not exist in table 'TaskEntityRelationships'.</p>
  </blockquote>
  
  <p>Simplified snapshot:</p>
  
  <pre><code>modelBuilder.Entity("KrossDelivery.Data.Objects.TaskEntityRelationships.TaskEntityRelationship", b =&gt;
          {
              b.Property&lt;int&gt;("Id")
                  .ValueGeneratedOnAdd();
  
              b.Property&lt;int&gt;("CreationTransactionId");
  
              b.Property&lt;int&gt;("DeliveryAgentId");
  
              b.Property&lt;int&gt;("DeliveryExecutiveId");
  
              b.Property&lt;DateTime?&gt;("EndDateTime");
  
              b.Property&lt;int?&gt;("LastEditTransactionId");
  
              b.Property&lt;DateTime&gt;("StartDateTime");
  
              b.Property&lt;int?&gt;("TaskEntityStatusEventId");
  
              b.Property&lt;int?&gt;("TaskEntityStatusId");
  
              b.Property&lt;int&gt;("TaskId");
  
              b.HasKey("Id");
  
              b.HasIndex("CreationTransactionId");
  
              b.HasIndex("DeliveryAgentId");
  
              b.HasIndex("DeliveryExecutiveId");
  
              b.HasIndex("LastEditTransactionId");
  
              b.HasIndex("TaskEntityStatusEventId");
  
              b.HasIndex("TaskEntityStatusId");
  
              b.HasIndex("TaskId");
  
              b.ToTable("TaskEntityRelationships");
          });
  </code></pre>
  
  <p>simplified Migration:</p>
  
  <pre><code>protected override void Up(MigrationBuilder migrationBuilder)
      {
          migrationBuilder.DropColumn(
              name: "CreatedDateTime",
              table: "TaskEntityRelationships");
  }
  </code></pre>
  
  <p>From code i can understand that CreatedDateTime already dropped from model snapshot.Dev A committed his model snapshot with migration but when Dev2 take latest and point new database it is not working. I don't know how to manage model snapshot and migrations and in which sequence I should commit in TFS? </p>
  
  <p>Please advice.Thanks!</p>