如何调用 SQLitePCL.Batteries.Init()?

2023-12-29

我正在尝试为我的应用程序创建 SQLite 数据库,但遇到了此错误。

System.Exception:'您需要调用 SQLitePCL.raw.SetProvider()。如果 您正在使用捆绑包,这是通过调用完成的 SQLitePCL.Batteries.Init()。'

我创建了一个简单的控制台应用程序,运行完全相同的代码进行创建,没有任何问题。代码看起来像这样!

using (var dataContext = new SampleDBContext())
{
    dataContext.Accounts.Add(new Account() { AccountName = name, AccountBalance = balance });
}


public class SampleDBContext : DbContext
{
    private static bool _created = false;
    public SampleDBContext()
    {
        if (!_created)
        {
            _created = true;
            Database.EnsureDeleted();
            Database.EnsureCreated();
        }
    }
    protected override void OnConfiguring(DbContextOptionsBuilder optionbuilder)
    {
        optionbuilder.UseSqlite(@"Data Source="Source folder"\Database.db");
    }

    public DbSet<Account> Accounts { get; set; }
}

谁能阐明这个问题?我在两个项目上安装了相同的 Nuget 包,两者之间的唯一区别是数据源和我用于数据库的 POCO 类。

Thanks.

Edit我的程序目前包括Console application引用了一个.Net Framework Class Library. The Console applicationsimple 有一个如下所示的构造函数:

public Program()
{   
    using (var db = new FinancialContext())
    {
        db.Accounts.Add(new Account() { AccountName = "RBS", AccountBalance=20 });
    }
}

类库有一个 FinancialContext 如下:

public class FinancialContext : DbContext
{
    public DbSet<Account> Accounts { get; set; }

    public FinancialContext()
    {
      # Database.EnsureDeleted();
        Database.EnsureCreated();
    }

    protected override void OnConfiguring(DbContextOptionsBuilder optionbuilder)
    {
        optionbuilder.UseSqlite(@"Data Source="Some Source Folder"\Database.db");
    }
}

上述错误显示在#符号处,是我编码方式有问题吗?我真的很想知道问题是什么,以便我可以正确修复它,而不是应用“修复”。我也尝试了评论中的建议,但将代码行SQLitePCL.raw.SetProvider(new SQLitePCL.SQLite3Provider_e_sqlite3()); in the Console Application给出了错误SQLitePCL不在当前上下文中,这让我觉得我错过了一个参考?


当我试图避免任何额外的依赖并选择Microsoft.EntityFrameworkCore.Sqlite.Core包裹。

您应该安装并使用Microsoft.EntityFrameworkCore.Sqlite相反,它依赖于SQLitePCLRaw包裹。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何调用 SQLitePCL.Batteries.Init()? 的相关文章

  • Poco c++Net:Http 从响应中获取标头

    我使用 POCO C Net 库进行 http 我想尝试制定持久缓存策略 首先 我认为我需要从缓存标头中获取过期时间 并与缓存值进行交叉检查 如果我错了 请告诉我 那么我如何从中提取缓存头httpResponse 我已经看到你可以用 Jav
  • 为什么 F# 的默认集合是排序的,而 C# 的不是?

    当从 C 世界迁移到 F 最惯用的可能 思维方式时 我发现了这个有趣的差异 在 C 的 OOP mutable 世界中 默认的集合集合似乎是HashSet https learn microsoft com en us dotnet api
  • 在路由mvc 4中添加公司名称

    我一直在尝试为 Facebook 等用户提供在 URL 中添加公司名称的选项 http localhost 50753 MyCompany Login 我尝试过不同的网址 但没有成功 routes MapRoute name Default
  • 在 OnModelCreating 期间设置列名称

    Issue 我目前正在尝试通过设置的属性为我的表及其列添加前缀 我正在使用实体框架核心 我已经正确地为表名添加了前缀 但我似乎无法弄清楚列的前缀 我有一种感觉 我需要使用反射 我已经留下了我的 可能很糟糕的 反思尝试 有人有办法在实体中设置
  • 从代码中,如何创建对存储在附加属性中的对象的属性的绑定?

    我们有一个继承的附加属性来存储一个对象 在可视化树的更下方 我们希望从代码绑定到该对象的属性 通常我们像这样构建绑定的路径部分 var someBinding new Binding Path new PropertyPath Attach
  • 如何使用 SOAP 且不使用 WSE 在 .NET 中签署 Amazon Web 服务请求

    亚马逊产品广告 API 以前称为 Amazon Associates Web Service 或 Amazon AWS 实施了一项新规则 即自 2009 年 8 月 15 日起 向其发送的所有 Web 服务请求都必须经过签名 他们在其网站上
  • 运行需要 MySql.Data 的内置 .NET 应用程序

    我在运行我编写的内置 NET 应用程序时遇到问题 我的应用程序使用最新的 MySql 连接器 该连接器安装在我的系统上 当我尝试将其添加为引用时 该连接器显示为 NET 4 Framwork 组件 当我在环境中以调试模式运行应用程序时 一切
  • 是否存在指向不同类型的指针具有不同大小的平台?

    C 标准允许指向不同类型的指针具有不同的大小 例如sizeof char sizeof int 是允许的 但是 它确实要求如果将指针转换为void 然后转换回其原始类型 它必须与其原始值进行比较 因此 从逻辑上来说 sizeof void
  • 访问 ascx 文件中的母版页控件

    我有一个母版页文件 其中包含 2 个面板控件中的 2 个菜单 我还使用控件来检查用户是否登录并获取用户类型 根据我想要显示 隐藏面板的类型 控件本身不在母版页中引用 而是通过 CMS 系统动态引用 我想在用户控件中使用findcontrol
  • UI 函数在快速事件完成之前触发

    我有一个停靠在 Silverlight 应用程序中的 Web 浏览器框架 有时会在其上弹出全窗口 XAML Silverlight UI 元素 我已经或多或少修复了一个老问题 即 Web 框架的内容似乎与 Silverlight 内容不能很
  • 使用具有抗锯齿功能的 C# 更改抗锯齿图像的背景颜色

    我有一个图像需要更改背景颜色 例如 将下面示例图像的背景更改为蓝色 然而 图像是抗锯齿的 所以我不能简单地用不同的颜色替换背景颜色 我尝试过的一种方法是创建第二个图像 仅作为背景 并更改其颜色并将两个图像合并为一个图像 但是这不起作用 因为
  • 为什么 Cdecl 调用在“标准”P/Invoke 约定中经常不匹配?

    我正在开发一个相当大的代码库 其中 C 功能是从 C P Invoked 的 我们的代码库中有很多调用 例如 C extern C int stdcall InvokedFunction int 使用相应的 C DllImport CPlu
  • 使用 GCC 生成可读的程序集?

    我想知道如何使用GCC http en wikipedia org wiki GNU Compiler Collection在我的 C 源文件中转储机器代码的助记符版本 这样我就可以看到我的代码被编译成什么 你可以使用 Java 来做到这一
  • 如何从 Rx Subscribe 回调异步函数?

    我想回调 Rx 订阅中的异步函数 例如 像那样 public class Consumer private readonly Service service new Service public ReplaySubject
  • 逆向工程 ASP.NET Web 应用程序

    我有一个 ASP NET Web 应用程序 我没有源代码 该 bin 包含 10 个程序集和一个 compiled 文件 我在 App Code dll 上使用 Reflector 它向我显示了类和命名空间之类的东西 但它太混乱了 有没有什
  • .NET 4 的条件编译[重复]

    这个问题在这里已经有答案了 可能的重复 条件编译和框架目标 https stackoverflow com questions 2923210 c sharp conditional compilation and framework ta
  • 如何停止无限循环?

    我正在编写一个程序 该程序将计算三角形或正方形的面积 然后提示用户是否希望计算另一个 我的代码已经运行到可以计算任一形状的面积的程度 但随后不再继续执行代码的其余部分 例如 如果选择了正方形 则计算面积 然后返回到正方形边长的提示 我假设这
  • 在 C#.NET 中安全删除文件

    在我正在做的一个项目中 我想为用户提供 安全 删除文件的选项 例如 用随机位或 0 覆盖它 在 C NET 中是否有一种简单的方法可以做到这一点 效果如何 你可以调用系统内部删除 http technet microsoft com en
  • 来自 3rd 方库的链接器错误 LNK2019

    我正在将旧的 vc 6 0 应用程序移植到 vs2005 我收到以下链接器错误 我花了几天时间试图找到解决方案 错误LNK2019 无法解析的外部符号 imp 创建AwnService 52 在函数 public int thiscall
  • 如何使用placement new重新初始化该字段?

    我的课程包含字段 private OrderUpdate curOrderUpdate 我一遍又一遍地使用它 经常需要重新初始化 for int i 0 i lt entries size i auto entry entries i ne

随机推荐

  • 删除Kafka 0.8.1.1中的主题

    我需要删除主题test在 Apache Kafka 0 8 1 1 中 正如表中所表达的文档在这里 https kafka apache org documentation html basic ops modify topic 我已经执行
  • Android smack 库订阅(不显示入站或出站通知)

    我正在开发一个 Android 聊天应用程序 其中我使用 smack 库进行即时消息传递 一切工作正常 但最大的问题在于订阅 如何向其他用户发送订阅通知 这是我发送订阅请求的代码 public void run runOnUiThread
  • Lotus Domino Designer 中的源代码控制

    多年来 我们一直在一个大型项目中使用 Domino 但没有任何真正的源代码控制 除了服务器备份 因此 当我注意到最新的 Designer 8 5 3 具有与 SVN 集成的潜力时 我感到非常高兴 我无法仅通过以下方式让 SVN 工作原始说明
  • $watch'ing Angular 指令中的数据更改

    我怎样才能触发 watch当操作内部数据 例如 插入或删除数据 时 在 Angular 指令中使用变量 但不为该变量分配新对象 我当前正在从 JSON 文件加载一个简单的数据集 我的 Angular 控制器执行此操作 并定义了一些函数 Ap
  • 将记录从android中的hashmap保存到数据库中

    我只是想寻求帮助 我在列表视图中填充了一个哈希图 下面的代码是我的哈希图的代码 mylist new ArrayList
  • 使用Shapeless通过HList将Future的tuple转换为tuple的Future

    有没有一种简单的方法将 Future A Future B Future C Future N 类型的元组转换为 Future A B C N 这假设元组中元素的数量未定义 我尝试将元组转换为 HList 并尝试了类似的 FoldLeft
  • 这些图中的箭头图例(MVC - MVP - MVVM)是什么?

    我尝试理解 MVC MVP 和 MVVM 模式之间的主要区别 我找到了这 3 个图表 但我不确定是否理解它们 你能帮我解释一下虚线和实线的图例是什么吗 MVC 来自维基百科的定义 来自 Microsoft MSDN 网站的 MVP 来自微软
  • Python tkinter treeview获取/返回所选项目的父名称

    我试图在选择事件时返回 tkinter 树视图选择的父项 因此 如果选择更改为 子项 我希望它打印 父项 下面的工作示例 当前它打印选择项 而不是父项选择 try import tkinter as tk import tkinter tt
  • UML 序列图中的构造函数

    下面的序列图和构造函数 表示为创建对象 的含义是什么 消息的名称 Class B 是错误的 它应该是 create 这就是让你困惑的地方吗
  • 通过“/”在多行中一次拆分数千列,对新行中的值进行排序并添加“NA”值

    我想分割一个包含数千列的数据框 数据框如下所示 sample data of four columns sample lt read table stdin header TRUE sep POS v1 v2 v3 v4 152 0 0 1
  • 如何访问 .URL 文件中的 URL 和书签标题?

    我正在使用 NET 2 0 Visual Studio 2005 C 下面的代码从包含书签的 url 文件的目录中获取 IE 收藏夹 书签 的文件名 Example 用户 收藏夹 blah url 但我真正想要的是该文件内的书签 URL 当
  • 使文档可通过 java/servlet 下载

    我需要知道java servlet中是否有一种方法可以使存储在数据库中的文档 doc pdf 可供用户按请求的方式下载 请参见下文 例如 有一个网页和其中文档的链接 现在是这样完成的 如果用户单击该链接 则会打开一个新的空白窗口 并显示下载
  • MVC 最佳实践

    我是 MVC 新手 我正在使用 codeigniter 想知道应该在哪里放置 cut description 函数 我的模型检索事件列表 包括其描述 如果描述太长 我需要在前 n 个单词之后将其剪掉 并添加一个 阅读更多 链接 这样视图就不
  • 如何在 lldb 中打印 Vec

    我想使用 ascii 格式逐字节打印 vec let slice1 b abcdefg 我可以像这样打印结构 lldb p slice1 u8 slice1 data ptr 0x00007ff9abe00020 length 7 当我尝试
  • Java 线程等待锁定未(明显)锁定的对象

    通常 当我要求进行线程转储时 很容易解释性能不佳的系统的症状 即通常情况下 我可以看到许多线程显然正在等待已被另一个线程获取但未释放的监视器 在本例中 我有很多线程在等待监视器 0x965ad100 但似乎没有一个线程首先拥有该监视器 可以
  • 如何对数据库中的商品进行折扣建模?

    我正在建立一个电子商务网站 并希望在有限的时间内为某些商品提供折扣 我的产品表 MySQL 如下所示 Product productId Name Weight Price price as on the cover of the item
  • 使用 QAction 而不添加到菜单(或工具栏)

    我正在尝试开发一个具有非常模块化的命令方法的应用程序 并且认为这会很好 因为我正在使用 pyqt 使用 QAction 将快捷方式绑定到命令 但是 似乎操作快捷方式仅在操作在菜单或工具栏中可见时才起作用 有谁知道如何在不可见的情况下让此操作
  • Swift 和 CoreData 使用自定义类作为可转换对象

    我正在尝试使用带有 swift 和 CoreData 的自定义类作为可转换对象 我一直在浪费时间试图弄清楚但无法解决 我不断收到两个错误 无法将属性标记为 NSManaged 因为它的类型无法在 Objective C 中表示 并且属性无法
  • 捕获字符串格式中的 **vars() 模式

    我经常发现自己使用以下模式进行字符串格式化 a 3 b foo c dict mykey myval prints a is 3 b is foo mykey is myval print a is a b is b mykey is c
  • 如何调用 SQLitePCL.Batteries.Init()?

    我正在尝试为我的应用程序创建 SQLite 数据库 但遇到了此错误 System Exception 您需要调用 SQLitePCL raw SetProvider 如果 您正在使用捆绑包 这是通过调用完成的 SQLitePCL Batte