博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
win8 应用商店程序使用SQLITE数据库
阅读量:6633 次
发布时间:2019-06-25

本文共 2924 字,大约阅读时间需要 9 分钟。

研究WIN8的应用程序商店也有几天了,苦于一直没有找到快速入门的方法,一直纠结于应该先学那一块。

今天我终于想通了,想想以前在学习WEB开发的时候,也不是样样学会以后再去做的开发,说到底还是要做到哪,学到哪。

今天我先说说应用商店程序使用SQLLITE。

翻看MSDN,我发现微软没有提供任何使用SQLITE的示列代码,也没有提供一些API接口。后来在网上百度了一番,终于知道原来WIN8不是原生支持SQLITE的,需要安装一些插件才能使用。

1.创建一个metro项目

2.在工具,选择扩展与更新中,选择联机(online),在搜索框内输入sqlite

3.将会发现一个叫做sqlite for window runtime点击安装

4.

5.在引用中,选择windows,扩展,把Mircosoft visual c++ runtime package以及sqlite for windows runtime二者勾选上

 

6.点选解决方案,选择属性,配置属性,将平台选择为对应的平台,暂时不支持any cpu

 

7.点击项目,选择管理nuget包(如果没有需要另行安装),在联机中搜索sqlite-net,点击安装

 

8安装成功后会生成两个文件:SQLite.csSQLiteAsync到此完成安装部署

9,把我们下载的SQLITE.DLL拷贝的工程的根路径(下载路径上面的参考路径里面有,我下面也放了一个64位版本的文件)。

下面就是举一个简单的举例进行了解sqlite的使用;(经过试验,这一步是不需要的)

首先:声明一个person类也就是表主键自动增长

 

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.IO;using SQLite;namespace AppHelloworld{    public class Person    {        [SQLite.AutoIncrement, SQLite.PrimaryKey]        public int ID { get; set; }        public string FirstName { get; set; }        public string LastName { get; set; }        private string _filepath = "";        public Person(string filepath)        {            _filepath = filepath;        }        public Person() { }        public async void Create()        {            SQLite.SQLiteAsyncConnection conn = new SQLite.SQLiteAsyncConnection(_filepath);            await conn.CreateTableAsync
(); } public async void Insert() { SQLite.SQLiteAsyncConnection conn = new SQLite.SQLiteAsyncConnection(_filepath); await conn.InsertAsync(new Person() { FirstName = "liufei", LastName = "Sky" }); } public async void Select() { SQLite.SQLiteAsyncConnection conn = new SQLite.SQLiteAsyncConnection(_filepath); var query = await conn.Table
().ToListAsync(); int i = 0; foreach (var item in query) { // Debug.WriteLine(string.Format("{0}: {1} {2}", item.Id, item.Name, item.Surname)); } } }}

 

来看看调用

private async void Button_Click(object sender, RoutedEventArgs e)        {            var root = Windows.Storage.ApplicationData.Current.LocalFolder;            var path = await root.CreateFolderAsync("sql", CreationCollisionOption.OpenIfExists);            var filename = await path.CreateFileAsync("people.sqlite", CreationCollisionOption.OpenIfExists);            string filepath = filename.Path;            Person person = new Person(filepath);            //    person.Create();            person.Insert();            person.Select();        }

文件就创建在你的APP的相应的文件夹下面了

我的是:C:\Users\David Zhu\AppData\Local\Packages\3595c634-cd9f-450c-ac45-0ffa721c77dc_nc6yw4ayk18f8\LocalState\sql

这里需要提一下,就是SQLITE3.DLL不是通过引用放到解决方案里面的,而是直接拷贝到程序的根路径,这和我们以前的开发方式不太一样。另外需要找到你自己计算机匹配的版本。

 再附加上我的SQLITE.DLL,方便大家使用

转载于:https://www.cnblogs.com/zhuzhenyu/archive/2012/11/27/2790193.html

你可能感兴趣的文章