title author date CreateTime categories
dotnet 控制台读写 Sqlite 提示 no such table 找不到文件
lindexi
2019-08-31 16:55:58 +0800
2019-04-18 08:35:19 +0800
dotnet

在使用 dotnet 读写 Sqlite 可以通过 EF Core 的方法,但是在 EF Core 创建的数据库可能和读写的数据库不是相同的文件

在我运行代码的时候发现在通过迁移创建数据库,创建的文件是在项目的代码文件夹里面,但是在运行代码的时候是从程序的文件夹开始寻找,于是就找不到数据库文件

因为找不到数据库文件就会提示 Microsoft.Data.Sqlite.SqliteException:“SQLite Error 1: 'no such table:Foo'" 看起来和没有写迁移一样

在 dotnet 使用迁移就可以创建数据库,或者在修改数据

dotnet ef migrations add Lindexi
dotnet ef database update

于是通过修改文件的相对路径找到项目的数据库,因为程序一般都在 bin\debug\netcoreapp3.0 所以通过 ..\..\..\数据库.db 就可以找到数据库

如果是在 ASP.NET Core 可以使用下面代码

public class Startup
{private IApplicationEnvironment _appEnv;public Startup(IApplicationEnvironment appEnv){_appEnv = appEnv;}public void ConfigureServices(IServiceCollection services){services.AddEntityFramework().AddSqlite().AddDbContext<MyContext>(options => { options.UseSqlite($"Data Source={_appEnv.ApplicationBasePath}/data.db"); });}
}

迁移 - EF Core

2019-8-31-dotnet-控制台读写-Sqlite-提示-no-such-table-找不到文件相关推荐

  1. 找不到redis得pid文件_电脑提示Windows找不到文件?试试这两个技巧,轻松解决!...

    如果在电脑开机时,弹出了有关"windows找不到文件"的提示窗口,但运行基本正常,这有可能是某程序卸载以后,注册表中残留有信息. 或者是电脑杀毒过程当中,杀毒软件将此文件作为病毒 ...

  2. propertysource注解 找不到文件_电脑提示Windows找不到文件?试试这两个技巧,轻松解决!...

    如果在电脑开机时,弹出了有关"windows找不到文件"的提示窗口,但运行基本正常,这有可能是某程序卸载以后,注册表中残留有信息. 或者是电脑杀毒过程当中,杀毒软件将此文件作为病毒 ...

  3. 管理计算机找不到应用程序,Win7计算机管理提示找不到文件或没有关联的程序问题解决方法...

    Win7计算机的右键菜单管理功能,是爱好捣鼓电脑的同学经常用到的功能之一.但是出于种种原因,计算机管理经常打不开. 当我们右击计算机选择管理时,如果打不开,一般情况下会有两种提示: ①:Winows ...

  4. pycharm中提示windows找不到文件‘chrome’

    pycharm中,使用浏览器打开.html文件,提示如下:windows找不到文件'chrome' 原因:pycharm中未设置chrome的路径,找不到路径导致. 解决方法–以谷歌为例: 1.找到谷 ...

  5. windows10打开指向的链接提示Windows找不到文件

    文章目录 一.问题描述 二.解决方法 1.解决方法① 2.解决方法② 3.解决方法③ 4.解决方法④ 一.问题描述 windows10更新后,打开windows10系统上的链接弹出窗口windows找 ...

  6. 【小故事大智慧】学习,何为会与不会?------记2019.12.31与郭老师和米老师的聊天

    今天给大家分享一下,我与男神女神之间的小故事,小故事大智慧呦,希望大家可以共勉! 这样吧,先拿出我的杀手锏,给大家出两道小学二年级的乘法题好啦,注意呦,这可是男神出的,要重视啊,重视啊,重视哈---- ...

  7. AI+5G:2019.03.31第11届中国(深圳)IT领袖峰会【IT新未来: 5G与人工智能】内容概要

    AI+5G:2019.03.31第11届中国(深圳)IT领袖峰会[IT新未来: 5G与人工智能]内容概要 导读 5G+AI双核启动会更加珠联璧合.相得益彰. IOT 采集数据 → Deel Learn ...

  8. qt mysql读写_QT读写Sqlite数据库

    QT读写Sqlite数据库 //.h /**************************************************************************** ** ...

  9. html5 自动保存 提示,html5+ SQLite提示数据表不存在

    mui.init(); //plusReady,用来定义加载dom后的操作 //读取数据 mui.plusReady(function() { var options = { name:'db_not ...

  10. 调整idea中控制台及右侧提示框字体大小

    调整idea中控制台及右侧提示框字体大小

最新文章

  1. Dockerfile构建实践
  2. vim配置@year12
  3. Apache Flink 零基础入门(十二)Flink sink
  4. hdu 4588 Count The Carries 南京邀请赛
  5. 读书笔记:软件人才-管理的艺术
  6. print writer保留原有信息写文件_Python读写EXCEL文件常用方法大全 - pythonputao
  7. 自执行匿名函数剖析整理
  8. 企业应用程序集成简介
  9. 如何在Golang中返回错误?
  10. VLAN与子网划分区别
  11. php定时任务sw,[原创]Swoole和Swoft的那些事(Task投递/定时任务篇)
  12. 用于he染色组织细胞核分割的两阶段U-Net算法
  13. 概率算法(随机化算法)
  14. xamarin.forms 自定义Switch 采用 syncfusion.button中的 sfswitch
  15. 文科妹子都会用 GitHub,你这个工科生还等什么
  16. 放射组学常用到的一些工具(软件)
  17. C语言每日一练——第73天:谁是窃贼问题
  18. 亚马逊多账号防关联技巧
  19. 跨境电商支付方式之如何玩转跨境支付
  20. Unity 性能优化基础

热门文章

  1. 1984洛杉矶奥运会歌曲《reach out》铃声 1984洛杉矶奥运会歌曲...
  2. pytorch的函数中的dilation参数的作用
  3. VSCode 正则表达式的妙用
  4. 和女生约会的30条注意事项
  5. 解决41版后chrome菜单标题不支持mactype的方法 #折腾PC
  6. Apex机器码-逃离塔科夫机器码(年度最新教程依旧可用)
  7. 3.农夫、狐狸、鸡、小米问题
  8. 下列哪一项不是计算机网络的典型应用,2012年考研专业课自测试题及答案:计算机...
  9. 公链之Aptos(前脸书/Meta员工成立的新公链项目)
  10. Flutter笔记- Flutter的布局Widget(二)