你的位置:首页 > 软件开发 > ASP.net > 轻量级本地数据库SQLite在WinRT的使用

轻量级本地数据库SQLite在WinRT的使用

发布时间:2015-04-28 16:00:18
开发环境:Windows 8.1开发工具:Visual Studio Express 2013 for Windows SQLite数据库介绍1.SQLite是一款轻型的嵌入式数据库,使用C++开发,使用非常广泛2.SQLite是一款跨平台的数据库,支持Windows、Lin ...

开发环境:Windows 8.1

开发工具:Visual Studio Express 2013 for Windows

 

SQLite数据库介绍

1.SQLite是一款轻型的嵌入式数据库,使用C++开发,使用非常广泛

2.SQLite是一款跨平台的数据库,支持Windows、get='_blank'>Linux、Android、IOS、Windows Phone系统

3.在Windows Phone中的SQLite是一个非托管组件

4.可以在Windows运行时中使用,也可以在C#项目中使用

5.在C#项目中需要通过Windows运行时组件来访问 

6.跟大部分数据库的“客户端/服务器端”的模式不同,SQLite并不运行在一个独立的进程中,而是嵌入到程序中成为程序中的一部分。在同一个进程中进行数据操作有着比进程之间通讯更加高的效率

7.整个数据库(定义,表,数据等)存储到一个单一的文件中,使得数据库迁移变得更加方便。

 

在应用中添加SQLite引用

SQLite项目组已经为我们制作好了SQLite for Windows Runtime,并将之做成了一个VS扩展,使得使用起来更加方便。

http://www.sqlite.org/download.html 下载并安装以下两个插件

轻量级本地数据库SQLite在WinRT的使用

安装完毕之后就可以在项目右键添加引用添加C++ Runtime Package和SQLite Package

轻量级本地数据库SQLite在WinRT的使用

引用之后sqlite是以dll形式存在的,如果我们需要使用dll中封装的方法我们需要使用P/Invoke的方法并自己在应用中重新封装工作量巨大。推荐使用sqlite-net。这是一个开源的轻量级的库,可以让.Net平台操作sqlite数据库。我们可以通过nuget获得:

轻量级本地数据库SQLite在WinRT的使用

完成之后我们将会得到两个文件:

轻量级本地数据库SQLite在WinRT的使用

这其中不仅通过P/Invoke调用大量的dll中方法,并重新进行了封装,使得方法大部分支持异步调用,极大的方便了我们使用。

SQLite-net的使用

  public static class PasswordController  {     public static List<Password> GetAll()    {      var query = Common.Conn.Table<Password>();      return query.ToList();    }     public static Password Get(int id)    {      var query =Common.Conn.Table<Password>().Where(p => p.Id == id);      if (query != null)      {        return query.FirstOrDefault();        //return query.ToList()[0];      }      return null;    }     public static void Edit(Password pw)    {      var query = Common.Conn.Table<Password>().Where(p => p.Id == pw.Id);      if (query != null)      {        Common.Conn.Update(pw);      }    }    public static void Add(Password pw)    {      Common.Conn.Insert(pw);    }

原标题:轻量级本地数据库SQLite在WinRT的使用

关键词:sql

sql
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。