title: Column Order EF Core with inheritance
body: <p>I Have an EF Core 3.1 code first project in which most classes inherit from a common base class named BusinessObject.</p>
  
  <pre><code>public abstract class BusinessObject
  {    
      [Required()]
      [Column("Id", Order = 0)]
      [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
      public int Id { get; set; }
  
      [Column("Comment", Order = 100)]
      public string Comment { get; set; }
  
      [Required()]
      [Column("CreatedAt", Order = 101)]
      public DateTimeOffset CreatedAt { get; set; } = DateTime.UtcNow;
  
      [Required()]
      [Column("CreatedByUserId", Order = 102)]
      public int CreatedByUserId { get; set; }           
  
      //A few more columns....
  }
  
  [Table("MyTable", Schema = "SampleSchema")]
  public class MyTable: BusinessObject
  {
      [Column("MyColumns1", Order = 1)]
      [MaxLength(256)]
      public string MyColumns1{ get; set; }
  
      [Column("MyColumns2", Order = 2)]
      [MaxLength(256)]
      public string MyColumns2{ get; set; }
  }
  </code></pre>
  
  <p>As you can see, I want to set the order of the columns by data annotations and I would expect a table to be created like this:</p>
  
  <ul>
  <li>Id</li>
  <li><strong>MyColumns1</strong></li>
  <li><strong>MyColumns2</strong></li>
  <li>Comment </li>
  <li>CreatedAt</li>
  <li>CreatedByUserId</li>
  </ul>
  
  <p>In reality, the migration does</p>
  
  <ul>
  <li>Id</li>
  <li>Comment </li>
  <li>CreatedAt</li>
  <li>CreatedByUserId</li>
  <li><strong>MyColumns1</strong></li>
  <li><strong>MyColumns2</strong></li>
  </ul>
  
  <p>What am I missing? Is this possible by Fluent API? I prefer data annotations to keep the DBContext lean. </p>