尽管对象有效,但对象名称无效
Invalid object name even though the object is valid
我有一个控制器 actionresult 的单元测试。当我 运行 单元测试时,它在操作结果的 db.SaveChanges();
部分中断。当我测试实际方法(通过网络浏览器和数据库中的数据)时,它很好,但是当我 运行 我的单元测试失败时。我收到的错误是:用户代码未处理 DbUpdateException。查看内部异常,内部异常:{"Invalid object name 'dbo.Projects'."}
我正在使用 entityframeworks codefirst 结构,这是我的代码:
[ValidateAntiForgeryToken]
[Authorize(Roles = "A")]
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult AddProject(Projects project)
{
if (ModelState.IsValid)
{
using (var db = new MyDbContext())
{
db.ProjectModels.Add(project);
db.SaveChanges();
}
return RedirectToAction("ListOfProjects", "Project");
}
return View(project);
}
[TestMethod()]
public void AddProjectTestWithModl()
{
var controller = new AdminController();
var model = new Projects() { Name = "Name", Description = "Desc", Duration = "1 month" };
var result = controller.AddProject(model) as ViewResult;
Assert.AreEqual(model, result.ViewData.Model);
}
对象名称无效 'dbo.Projects'。是 sql 服务器的异常。这意味着您的 table 在 dbo 架构中不存在。
检查您是否已连接到正确的数据库并且迁移已 运行。
我有一个控制器 actionresult 的单元测试。当我 运行 单元测试时,它在操作结果的 db.SaveChanges();
部分中断。当我测试实际方法(通过网络浏览器和数据库中的数据)时,它很好,但是当我 运行 我的单元测试失败时。我收到的错误是:用户代码未处理 DbUpdateException。查看内部异常,内部异常:{"Invalid object name 'dbo.Projects'."}
我正在使用 entityframeworks codefirst 结构,这是我的代码:
[ValidateAntiForgeryToken]
[Authorize(Roles = "A")]
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult AddProject(Projects project)
{
if (ModelState.IsValid)
{
using (var db = new MyDbContext())
{
db.ProjectModels.Add(project);
db.SaveChanges();
}
return RedirectToAction("ListOfProjects", "Project");
}
return View(project);
}
[TestMethod()]
public void AddProjectTestWithModl()
{
var controller = new AdminController();
var model = new Projects() { Name = "Name", Description = "Desc", Duration = "1 month" };
var result = controller.AddProject(model) as ViewResult;
Assert.AreEqual(model, result.ViewData.Model);
}
对象名称无效 'dbo.Projects'。是 sql 服务器的异常。这意味着您的 table 在 dbo 架构中不存在。
检查您是否已连接到正确的数据库并且迁移已 运行。