2021-03-17 乐帮网
sqlite netcore
sqlite数据库使用广泛,在net core中也自然也得到支持,当我使用如下代码直接打开数据库链接时报错了,System.Exception:“You need to call SQLitePCL.raw.SetProvider(). If you are using a bundle package, this is done by calling SQLitePCL.Batteries.Init().”自认为写的代码很简单也没有错误。示例代码是net core3.
string connString = "Data Source=./test.db";
string sql = "select * from userInfo";
using (SqliteConnection conn = new SqliteConnection(connString))
{
conn.Open();
var command = conn.CreateCommand();
command.CommandText = sql ;
sqliteDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
Console.WriteLine("UserId:{0}\t UserName:{1}",dr[0],dr[1]);
}
}
原因就是我们在net core 3中只使用了Microsoft.EntityFrameworkCore.Sqlite.Core 或者只引用了 Microsoft.Data.Sqlite.Core ,缺少相关实现。解决办法是添加引用Microsoft.EntityFrameworkCore.Sqlite,自从net core3 开始我们操作sqlite官方提供的标准库就是Microsoft.EntityFrameworkCore.Sqlite 了,和2.0版本有点不同。后面我会写一个dome。请查看右侧的相关文章。
关注我的微信公众号
在公众号里留言交流
投稿邮箱:1052839972@qq.com
庭院深深深几许?杨柳堆烟,帘幕无重数。
玉勒雕鞍游冶处,楼高不见章台路。
雨横风狂三月暮。门掩黄昏,无计留春住。
泪眼问花花不语,乱红飞过秋千去。
如果感觉对您有帮助
欢迎向作者提供捐赠
这将是创作的最大动力