0

我有一个包含类别表的 SqlLite 数据库。类别表有 3 列,Id:int,name:varchar,ObjectID:int

我为这张表写了实体:

class Category
{
    public int Id { get; set; }
    public string Name { get; set; }
    public int ObjectId { get; set; }
}

我也有一个背景:

class DEContext: DbContext
{
    public DbSet<Category> Categories { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Conventions
            .Remove<PluralizingTableNameConvention>();
    }
}

现在,当我尝试使用 context.Categories 获取类别时,我收到System.Data.SQLite.SQLiteException

SQL 逻辑错误或缺少数据库\r\n没有这样的列: Extent1.Object_Id

查询如下所示:

SELECT
    [Extent1].[Id] AS [Id],
    [Extent1].[Name] AS [Name],
    [Extent1].[ObjectId] AS [ObjectId],
    [Extent1].[Object_Id] AS [Object_Id]
FROM [Category] AS [Extent1]} System.Data.Entity.DbSet<Category> 

我不知道 Object_Id 来自哪里。我在 db 中没有这样的列,我在整个项目中也没有使用这样的名称。

我使用System.Data.SQLite

4

1 回答 1

3

好吧,我的错。我在我的对象实体中定义了类别列表,这导致了问题。

相关问题:

实体框架试图检索不存在的列

EntityFramework 试图选择一个不存在的列?

于 2013-10-03T12:44:08.523 回答