Entity Framework Code First: no se puede insertar una clave duplicada en el objeto 'db'

Estoy usando el nuevo código EF primero para un proyecto mío, y recibo un error extraño, mi modo es:

abstract class Member
{
   public virtual int MemberId;
  ... some other stuff

}

class User : Member
{
    public virtual string Name;
    ... some more props no new key defined
}

class MyDbContext
{
    public DbSet<User> Users {get;set;}
}

El resultado de la implementación en SQL Server es correcto, tengo una tabla de miembros y una tabla de usuarios (TPC). Ahora en mi principal tengo el siguiente código:

static Main()
{
   User x,y;
   using(MyDbContext ctx = new MyDbContext())
   {


    x = ctx.Users.Create();
    y = ctx.Users.Create();
    x.Name = "SomeUser";
    y.Name = "SomeUser2";
    ctx.SaveChanges();

   }
}

Al guardar los cambios que obtengo:

"Excepción no controlada: System.Data.Entity.Infrastructure.DbUpdateException: se produjo un error al actualizar las entradas. Consulte la excepción interna para detalles. ---> System.Data.UpdateException: se produjo un error al actualizar las entradas. Consulte la excepción interna para detalles. ---> System.Data.SqlClient .SqlException: Infracción de la restricción PRIMARY KEY 'PK_ Usuarios _0CF04B1821B6055D '. No se puede insertar una clave duplicada en el objeto 'dbo.Users'. "

El MemberId por defecto es identidad, así que simplemente no veo lo que está sucediendo aquí. He intentado crear las instancias con nuevas y adjuntarlas al contexto, pero el error fue el mismo, ¿alguna idea? ¡La base de datos está vacía!

Gracias

EDIT: Olvidé decir que el Miembro es una clase abstracta, lo siento por eso.

Respuestas a la pregunta(4)

Su respuesta a la pregunta