无法使用实体框架获取记录

本文关键字:框架 获取 记录 实体 | 更新日期: 2023-09-27 18:33:56

我有一个SqLite db,它有类别表。类别表有 3 列,Id:int,name:varchar,和对象 ID: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>();
    }
}

现在,当我尝试获取具有上下文的类别时。我收到的类别System.Data.SQLite.SQLiteException

SQL 逻辑错误或缺少数据库''r'没有此类列: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

无法使用实体框架获取记录

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

相关问题:

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

实体框架尝试选择不存在的列?