Entity Framework Code First - Não é possível inserir chave duplicada no objeto 'db'

Estou usando o novo código EF primeiro em um projeto meu e estou recebendo um erro estranho, meu modo é:

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;}
}

O resultado da implantação no SQL Server está ok, eu tenho uma Tabela de Membros e uma Tabela de Usuários (TPC). Agora, no meu principal, tenho o seguinte 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();

   }
}

Ao salvar as alterações, recebo:

"Exceção não tratada: System.Data.Entity.Infrastructure.DbUpdateException: ocorreu um erro ao atualizar as entradas. Consulte a exceção interna para detalhes. ---> System.Data.UpdateException: ocorreu um erro ao atualizar as entradas. Consulte a exceção interna para obter detalhes. ---> System.Data.SqlClient .SqlException: violação da restrição PRIMARY KEY 'PK_Comercia _0CF04B1821B6055D '. Não é possível inserir chave duplicada no objeto 'dbo.Users'. "

O MemberId por padrão é identidade, então eu simplesmente não vejo o que está acontecendo aqui. Eu tentei criar as instâncias com o novo e anexá-los ao contexto, mas o erro foi o mesmo, alguma idéia? O banco de dados está vazio!

Obrigado

EDIT: Esqueci de dizer que o Membro é uma classe abstrata, desculpe por iss

questionAnswers(4)

yourAnswerToTheQuestion