As of EF6 it is possible to do something like this when configuring Entity mappings using Table Per Hierarchy inheritance:
public class MyContext : DbContext
{
Used Custom Code First Conventions, which are available from EF6 onwards, to sort this out:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
//your code before
modelBuilder.Properties().Configure(prop => prop.HasColumnName(prop.ClrPropertyInfo.Name));
//your code after
}
This maps properties with the same name in different derived types to the same table column without explicit calls like those mentioned in the question.