0

非常に単純な例では解決できない奇妙なエラーが発生します。

モデルは単純な 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 = "mickey@mouse.com" };
    db.Users.Add(u);
    db.SaveChanges();
    var model = db.Users.ToList();
    return View(model);
}

エラーになる

オブジェクト名 'dbo.Users' が無効です。

4

1 に答える 1

0

コードには何も問題がないことがわかりました。データベースは奇妙でした。削除して再度生成させたところ、すべて問題ありませんでした。

おそらく私が元々持っていたものと関係があります

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

それ以外の

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

私のdbcontextでは、まだ単数形と複数形のものについて頭を悩ませています

于 2013-04-27T02:39:53.577 に答える