gpt4 book ai didi

c# - 使用字符串作为 DbSet 的类型,如 EF-Code First 中的 DbSet

转载 作者:行者123 更新时间:2023-11-30 22:24:02 25 4
gpt4 key购买 nike

我想要一个字符串列表,并使用 EF-CodeFirst 将它们保存到数据库或从数据库加载它们。这是我的 DbContext 类:

public class KeysDbContext : DbContext
{
public DbSet<string> Keys { get; set; }
}

但是当我尝试运行代码时,我得到了这个异常:System.InvalidOperationException : The type 'System.String' was not mapped。使用 Ignore 方法或 NotMappedAttribute 数据注释检查是否未明确排除该类型。验证该类型是否被定义为类,不是原始的、嵌套的或通用的,并且没有从 EntityObject 继承。

我该如何解决这个问题?

最佳答案

你不能有 DbSet<string> .字符串被 EF 视为原始类型,并且 DbSet 的类型必须是实体。实体具有属性(通常映射到数据库中的列)并且还必须具有键。如果在您的数据库中您有一个只有一个字符串列的表,您将必须创建一个具有字符串属性的实体来对此建模。此外,字符串属性必须是关键属性。

关于c# - 使用字符串作为 DbSet 的类型,如 EF-Code First 中的 DbSet<string>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13000748/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com