Entity Framework EntityType 'UserAccount' n'a pas de clé

J'obtiens l'erreur suivante:

One or more validation errors were detected during model generation:   
\tSystem.Data.Entity.Edm.EdmEntityType: : EntityType 'UserAccount' has no key defined. Define the key for this EntityType.
\tSystem.Data.Entity.Edm.EdmEntitySet: EntityType: EntitySet 'UserAccounts' is based on type 'UserAccount' that has no keys defined.

Cette erreur est déclenchée par le code:

_Db.Database.Initialize(true);

Je suppose que c'est de ne pas reprendre la Touche [] attribut du modèle pour une raison quelconque. À l'origine, lorsque j'ai tenté d'exécuter le code que je n'avais pas ajouté l'attribut de clé, cela pourrait-il signifier que quelque chose a été créé /mis en cache qui est de la prévention de cette clé?

La MVC4 projet est presque vide de l'installation de côté de, y compris Entity Framework 5

Modèle Code

public class AccountContext: DbContext
{
    public AccountContext()
        : base("DefaultConnection")
    {          
    }

    public DbSet<UserAccount> UserAccounts { get; set; }
}

[Table("UserAccount")]
public class UserAccount
{
    [Key]
    [Required]        
    public string Username;

    [Required]
    [DataType(DataType.Password)]
    [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)]
    public string Password;  

    public string Name;
    public string Surname;

    [Required] 
    public string Email;             
}

Mondiale.asax Initialisation

Database.SetInitializer(new DropCreateDatabaseAlways<AccountContext>());
var _Db = new AccountContext();
_Db.Database.Initialize(true);

Je l'ai déjà fait quelques recherches et comprendre les conventions de nommage: Id /nom d'utilisateur etc. Cependant, j'aimerais utiliser de manière explicite [Key] et appelez le champ nom d'utilisateur.

OriginalL'auteur Jack | 2013-05-08