2013-04-27 3 views
0

Я получаю странную ошибку, которую я не могу решить для очень простого примера.Ошибка Simple Entity Framework

Модель проста User.cs

public class User 
{ 
    public int Id { get; set; } 
    public string Name { get; set; } 
    public string Email { get; set; } 
} 

DbContext является Database.cs

public class DataBase : DbContext 
{ 
    public DataBase() : base("name=DefaultConnection") {} 

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

и код

DataBase db = new DataBase(); 

public ActionResult About() 
{ 
    var u = new User() { Name = "Mickey Mouse", Email = "[email protected]" }; 
    db.Users.Add(u); 
    db.SaveChanges(); 
    var model = db.Users.ToList(); 
    return View(model); 
} 

получает ошибку

Invalid имя объекта «dbo.Users ».

+0

Вы с помощью " сначала код? Если это так, вы должны переопределить 'onModelCreating' в' DbContext' и установить инициализатор db. – rcdmk

+0

Да, я могу привести пример. Примерами, которые я следую, нет. –

+0

Взгляните на это, если вас все еще интересуют инициализаторы базы данных: http://www.codeguru.com/csharp/article.php/c19999/Understanding-Database-Initializers-in-Entity-Framework-Code-First.htm – rcdmk

ответ

0

Оказывается, в коде нет ничего плохого, db был странным, я удалил его и давал ему сгенерировать снова, и все было хорошо.

Возможно, что-то делать со мной, первоначально имея

public DbSet<User> User { get; set; } 

вместо

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

в моем DbContext, все еще получает мою голову вокруг единственного числа против множественных вещей

Смежные вопросы