私は現在、いくつかの MVC3 サイトを構築しており、MVC4 を試してみようと考えています。しかし、私はあまり進んでおらず、その理由がわかりません...
最初にコードを使用してモデルを記述し、データベースを生成します。ただし、機能しておらず、ID フィールドが必要であることを示す検証エラーがスローされます。私は彼らの命名規則に従い、さまざまなチュートリアルに示されているようにいくつかの異なるものを試してみましたが、何もうまくいかないようです. これまで、EF は私の PK を決定することができ、挿入のためにそれらを指定することを心配する必要がありませんでした。これは、私が見ているすべての MVC4 チュートリアルに当てはまるようですが、どういうわけか、それらを正確に実行しても、私のデータベースは生成されません。
私のユーザーモデルの切り捨てられた例:
public class User
{
public int UserId { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Email { get; set; }
public string Password { get; set; }
}
次に、エラーの原因となっている初期化子:
public class WorkoutInitializer : DropCreateDatabaseIfModelChanges<WorkoutContext>
{
protected override void Seed(WorkoutContext context) {
var users = new List<User>
{
new User {
FirstName = "D",
LastName = "H",
Email = "blah@blahblah.com",
Password = "3f9cbbb2dad0774468af842678b11dafa7a16d81",
},
};
users.ForEach(u => context.Users.Add(u));
context.SaveChanges();
...bunch more stuff...
}
}
context.SaveChanges() が呼び出されると、プログラムは ValidationError をスローし、「UserId フィールドが必要です」と通知します。
ここで何が欠けていますか?