博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#学习十之windows应用和windows phone应用中的SQLite操作
阅读量:6980 次
发布时间:2019-06-27

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

Windows应用和windows phone应用可以用博客:中WPF的方法使用SQLite数据库

但是,还有另一种方法是使用SQLite:

首先,在VS中的工具栏中有一项拓展和更新,进入后联机搜索拓展包

根据开发的应用选用不同的拓展包,安装即可。

然后,添加引用来引用这个拓展的应用,之后,需要调整运行架构为X64或X86否则会报错(在配置管理器中调整)。

之后,右击项目名称进入管理Gu-net包,在里面加载两个类SQLite.cs和SQLiteAsync.cs

到这里,配置就完成了,然后是这两个类中使用数据库的一些操作:

class DatabaseHelperClass    {        SQLiteConnection dbConn;        //create Table        public async Task
OnCreate(string DB_PATH) { try { if (!CheckFileExists(DB_PATH).Result) { using (dbConn = new SQLiteConnection(DB_PATH)) { dbConn.CreateTable
(); } } return true; } catch { return false; } } private async Task
CheckFileExists(string fileName) { try { var store = await Windows.Storage.ApplicationData.Current.LocalFolder.GetFileAsync(fileName); return true; } catch { return false; } } //Retrieve the specific information from the database public Information readRecord(int RecordId) { using (var dbConn = new SQLiteConnection(App.DB_PATH)) { var existingconact = dbConn.Query
("select * from Information where Id =" + RecordId).FirstOrDefault(); return existingconact; } } // Retrieve the all contact list from the database. public ObservableCollection
ReadRecord() { using (var dbConn = new SQLiteConnection(App.DB_PATH)) { List
myCollection = dbConn.Table
().ToList
(); ObservableCollection
RecordList = new ObservableCollection
(myCollection); return RecordList; } } //Update existing conatct public void UpdateRecord(Information record) { using (var dbConn = new SQLiteConnection(App.DB_PATH)) { var existingconact = dbConn.Query
("select * from Information where Id =" + record.Id).FirstOrDefault(); if (existingconact != null) { existingconact.Website = record.Website; existingconact.userName = record.userName; existingconact.password = record.password; existingconact.CreationDate = record.CreationDate; dbConn.RunInTransaction(() => { dbConn.Update(existingconact); }); } } } // Insert the new contact in the Contacts table. public void Insert(Information newrecord) { using (var dbConn = new SQLiteConnection(App.DB_PATH)) { dbConn.RunInTransaction(() => { dbConn.Insert(newrecord); }); } } //Delete specific contact public void DeleteRecord(int Id) { using (var dbConn = new SQLiteConnection(App.DB_PATH)) { var existingconact = dbConn.Query
("select * from Information where Id =" + Id).FirstOrDefault(); if (existingconact != null) { dbConn.RunInTransaction(() => { dbConn.Delete(existingconact); }); } } } //Delete all contactlist or delete Contacts table public void DeleteAllRecord() { using (var dbConn = new SQLiteConnection(App.DB_PATH)) { //dbConn.RunInTransaction(() => // { dbConn.DropTable
(); dbConn.CreateTable
(); dbConn.Dispose(); dbConn.Close(); //}); } }

  

 

转载于:https://www.cnblogs.com/clownice/p/4521164.html

你可能感兴趣的文章
Java面试通关要点汇总集
查看>>
从源码角度理解Handler、Looper、MessageQueue之间关系
查看>>
Bitmap 比你想的更费内存 | 吊打 OOM
查看>>
为你揭秘小程序音视频背后的故事......
查看>>
自定义侧边快速索引栏
查看>>
一种自动化检测 Flash 中 XSS 方法的探讨
查看>>
基于环信sdk实现简单即时聊天
查看>>
Java基础-Synchronized原理
查看>>
大道至简,阿里巴巴敏捷教练的电子看板诞生记
查看>>
zookeeper学习04 zookeeper收尾+dubbo前瞻
查看>>
《讲个故事》为什么IP地址与Mac地址 缺一不可
查看>>
华山论剑之浅谈iOS的生产线 工厂模式
查看>>
浅谈javascript异步发展历程
查看>>
在vscode使用editorconfig的正确姿势
查看>>
当心!你的密码正在被手机中的声音泄露!
查看>>
你用过 PropTypes 的这些类型检查么?
查看>>
H5小游戏 【篇一】 组词游戏
查看>>
枚举的使用示例
查看>>
换个姿势学数学:学的爽,用的上
查看>>
runC爆严重漏洞影响Kubernetes、Docker,阿里云修复runC漏洞的公告
查看>>