title: EF Migrations: Move Table from 2 Column PK to Single Column causes ALTER before DROP and fails
body: <p>I'm using EF 4.3.1 Code First Migrations. I have a table like:</p>
  
  <pre><code>public class Product
  {
      [Key]
      [Column(Order=0)]
      [MaxLength(100)]
      public string Store { get; set; }
  
      [Key]
      [Column(Order=1)]
      [MaxLength(100)]
      public string Sku { get; set; }
  }​
  </code></pre>
  
  <p>I have an existing table created with the above code. I then moved it to a single-column Primary Key:</p>
  
  <pre><code>public class Product
  {
      [MaxLength(100)]
      public string Store { get; set; }
  
      [Key]
      [MaxLength(100)]
      public string Sku { get; set; }
  }​
  </code></pre>
  
  <p>This causes EF to fail in the next automatic migration, complaining:</p>
  
  <blockquote>
    <p>ALTER TABLE [Product] ALTER COLUMN [Store] nvarchar</p>
    
    <p>The object 'PK_Product' is dependent on column 'Store'. ALTER
    TABLE ALTER COLUMN Store failed because one or more objects access this
    column.</p>
  </blockquote>
  
  <p>Clearly the PK_Product needs to be dropped before attempting to fire this ALTER statement (why is it altering the column at all?), but instead the migration fails.</p>
  
  <p>Am I doing something wrong or is this a bug? Workarounds?</p>