从生成的表中检索数据时,对象名称“dbo.TableName”无效

Joc*_*ick 4 .net c# sql-server entity-framework ef-code-first

我首先使用实体​​框架代码来创建我的表。请注意 - 创建表,而不是数据库,因为我在托管环境中工作并且我没有允许创建数据库的用户。

提交数据库更新工作正常,但检索数据会出现异常:

异常详细信息:System.Data.SqlClient.SqlException:对象名称“dbo.EventHosts”无效。

我读到它发生是因为我没有使用 EF Code First 来创建数据库。没关系,但我如何优雅地解决这个问题?

所有生成的表都没有像 dbo 这样的前缀。像这样的解决方案不起作用,而且一点也不优雅:

[Table("EventHosts", Schema = "")]
Run Code Online (Sandbox Code Playgroud)

Ars*_*yan 5

好的,对我来说,问题是我有一个表,dbo.UserState并且在 C# EF 中dbo.UserStates由于复数而试图访问。

解决方案是将Table属性放在类之上并指定确切的表名:

[Table("UserState")]
public class UserState
{
    [Key]
    public int UserId { get; set; }
}
Run Code Online (Sandbox Code Playgroud)