WPF使用Dapper访问数据库
首先需要安装Dapper
和 Microsoft.Data.Sqlite
的包,注意不要直接安装Microsoft.Data.Sqlite.Core
这个包不包含原生动态链接库,因此无法直接使用。
如果遇上下文错误,就可以检查下是否错用了包Microsoft.Data.Sqlite.Core
You need to call SQLitePCL.raw.SetProvider(). If you are using a bundle package, this is done by calling SQLitePCL.Batteries.Init().”
接着就非常简单了,先新建一个和表格对应的实例类来映射表中的字段。
假设我的表结构是这样的,
CREATE TABLE Blog (Id INTEGER PRIMARY KEY AUTOINCREMENT,Title TEXT,Description TEXT);
那么就定义以下类来映射数据
public class Blog
{
public int Id { get; set; }
public string? Title { get; set; }
public string? Description { get; set; }
public override string ToString()
{
return $"User Id={Id}, Title={Title}, Description={Description}";
}
}
查找数据
新建一个Sqlite
的链接对象,并在其上做查询操作。Dapper会自动地帮我们映射同名的属性
string query = "SELECT * FROM Blog;";
List<Blog> blogs = connection.Query<Blog>(query).ToList();
更新数据
Blog blog = new Blog { Id = 1, Title = "New", Description = "New" };
string updateQuery = "UPDATE Blog SET Title=@Title, Description=@Description WHERE Id =@Id";
connection.Execute(updateQuery, blog);
增删改查其他都是类似的,就不多记录了。后面有机会记录更多表连接,外键的相关操作。
参考链接
感谢扫码支持