我们遇到了将Web应用程序部署到另一个环境的小问题.我们使用Entity Framework Code First方法创建了应用程序的数据库(db自动从模型创建).在此开发环境中,我们使用集成安全性,并在dbo用户下创建表.这些表就像
[dbo].[myTable]
对于我们的其他环境,我们使用DB的用户名/密码身份验证.我们编写了表格并在数据库上创建了它们.所以他们现在的名字就像
[myDbUser].[myTable]
运行应用程序时,我们总会遇到问题
无效的对象名称'dbo.myTable'.
似乎代码仍然试图寻找一个不存在的dbo表,因此失败了.
任何人都可以解释这个问题吗?Entity Framework从哪里获取此dbo前缀?
谢谢
当我尝试从我的Bieren表中获取数据时,我的代码给了我一个EntityCommandExecutionException.
异常消息说它找不到"dbo.Biers",这是非常明显的,因为它被称为"dbo.Bieren".
我可以通过重命名数据库中的表来轻松解决这个问题.尽管我不喜欢修复我的代码错误的数据库.
如何让实体框架使用正确的表而不是更改表的名称?
提前致谢.