原文:Win10之UWP的数据存储

我们知道通常我们开发的时候都要考虑把用户的数据存储到一个数据库里面,而这个数据库则考虑到了整个应用的性能上面,这里我们不考虑SQL server的数据库,我们考虑较为轻量的数据库进行存储。

首先我们新建一个项目,然后把界面用代码处理一下

 <Grid.RowDefinitions>
<RowDefinition Height="100"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<TextBlock Text="把数据存储入数据库"
HorizontalAlignment="Center"
VerticalAlignment="Center"
FontFamily="楷体"
FontSize="24"
Foreground="Green"/>
<TextBlock Text="MySQLite Connection Test"
HorizontalAlignment="Center"
FontSize="36"
FontFamily="Gabriola"
Grid.Row="1"
Foreground="Green"/>
<TextBlock Text="用户账号:"
Grid.Row="2"/>
<TextBox x:Name="MyTextBox"
Grid.Row="3"
PlaceholderText="name"/>
<TextBlock Text="用户密码:"
Grid.Row="4"/>
<PasswordBox x:Name="MyPassWordBox"
Grid.Row="4"
PlaceholderText="password"
Margin="0,20,0,0"/>
    <Page.BottomAppBar>
<CommandBar IsOpen="False"
ClosedDisplayMode="Minimal"
Background="Green">
<AppBarButton x:Name="Add"
Label="Add"
Icon="Add"
Click="Add_Click"/>
<AppBarButton x:Name="Show"
Label="Show"
Icon="Zoom"
Click="Show_Click"/>
</CommandBar>
</Page.BottomAppBar>

然后我们再来处理一下界面后台的事件代码处理

 string path;
SQLite.Net.SQLiteConnection conn;

到这里的时候我们忘记了一件事,没有安装相关的插件,所以再安装下数据库插件



还要再安装一个插件



紧接着我们安装好了插件后,我再来添加引用,让项目得到插件的支持



好了,这次可以好好的写代码了,我在项目中新增了一个类

   public class MyTest
{
[PrimaryKey,AutoIncrement]
public int Id { get; set; }
public string Name { get; set; }
public string PassWord { get; set; }
}

我回到我们的主界面的后台写写代码

  path = Path.Combine(Windows.Storage.ApplicationData.Current.LocalCacheFolder.Path, "db.MySQLite");
conn = new SQLite.Net.SQLiteConnection(new SQLite.Net.Platform.WinRT.SQLitePlatformWinRT(), path);
conn.CreateTable<MyTest>();

新增事件的后台的代码处理

private void Add_Click(object sender, RoutedEventArgs e)
{
var add = conn.Insert(new MyTest()
{
Name = MyTextBox.Text,
PassWord = MyPassWordBox.Password
});
Debug.WriteLine(path);
}

这里的这个方法是在visual studio 2015中显示实时新增的数据

        private void Show_Click(object sender, RoutedEventArgs e)
{
var query = conn.Table<MyTest>();
string result = String.Empty;
foreach (var item in query)
{
result = String.Format("{0}:{1}:{2}", item.Id, item.Name,item.PassWord);
Debug.WriteLine(result);
}
}



代码写到这里就已经写完了,我们看看目的达到了没有



我们再来看看第二次的效果如何

很显然我们写的数据成功的存储到了SQLite的数据库中,所以我们的目的就达到了!!!!

Win10之UWP的数据存储的更多相关文章

  1. Kooboo CMS技术文档之三:切换数据存储方式

    切换数据存储方式包括以下几种: 将文本内容存储在SqlServer.MySQL.MongoDB等数据库中 将站点配置信息存储在数据库中 将后台用户信息存储在数据库中 将会员信息存储在数据库中 将图片. ...

  2. Android之数据存储的五种方法

    1.Android数据存储的五种方法 (1)SharedPreferences数据存储 详情介绍:http://www.cnblogs.com/zhangmiao14/p/6201900.html 优 ...

  3. Android之网络数据存储

    一.网络保存数据介绍 可以使用网络来保存数据,在需要的时候从网络上获取数据,进而显示在App中. 用网络保存数据的方法有很多种,对于不同的网络数据采用不同的上传与获取方法. 本文利用LeanCloud ...

  4. Android之文件数据存储

    一.文件保存数据介绍 Activity提供了openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在J2SE环境中保存数据到文件中是一样的.文件可用来存放大量数据,如文本.图 ...

  5. Android之SharedPreferences数据存储

    一.SharedPreferences保存数据介绍 如果有想要保存的相对较小键值集合,应使用SharedPreferences API.SharedPreferences对象指向包含键值对的文件并提供 ...

  6. Atitit 数据存储视图的最佳实际best practice attilax总结

    Atitit 数据存储视图的最佳实际best practice attilax总结 1.1. 视图优点:可读性的提升1 1.2. 结论  本着可读性优先于性能的原则,面向人类编程优先于面向机器编程,应 ...

  7. Android数据存储之SQLCipher数据库加密

    前言: 最近研究了Android Sqlite数据库(文章地址:Android数据存储之Sqlite的介绍及使用)以及ContentProvider程序间数据共享(Android探索之ContentP ...

  8. Android数据存储之GreenDao 3.0 详解

    前言: 今天一大早收到GreenDao 3.0 正式发布的消息,自从2014年接触GreenDao至今,项目中一直使用GreenDao框架处理数据库操作,本人使用数据库路线 Sqlite----> ...

  9. Vertica增加一个数据存储的目录

    Vertica增加一个数据存储的目录 操作语法为: ADD_LOCATION ( 'path' , [ 'node' , 'usage', 'location_label' ] ) 各节点添加目录,并 ...

随机推荐

  1. RequiredFieldValidator----验证控件不起作用

    验证码对于网络时代的我们来说实在是太熟悉了.登陆一个站点.注冊一个账户或是各种聊天工具登陆都须要来输入验证码.     为什么要使用验证码呢?     验证码通常是防止有人利用机器人自己主动批量注冊. ...

  2. 集群搭建Solr

    Solr集群搭建 SolrCloud需要solr基于zookeeper部署,zookeeper是一个集群管理软件,由于SolrCloud需要由多台服务器组成.由zookeeper来进行协调管理.Zoo ...

  3. 【t061】游览路线

    Time Limit: 1 second Memory Limit: 128 MB [问题描述] 话说LCINF信息组来到烟台参加夏令营.一天,大家提议出去游玩,来到了烟台最繁华的地方.由于他们对烟台 ...

  4. 【codeforces 782B】The Meeting Place Cannot Be Changed

    [题目链接]:http://codeforces.com/contest/782/problem/B [题意] 每个人都有一个速度,只能往上走或往下走; 然后让你找一个地方,所有人都能够在t时间内到达 ...

  5. android tips—开机引导启动wifi设置

    在开机引导(Setupwizard,Guide)中都有关于wifi设置项,我得做法例如以下: Intent intent = new Intent(); intent.setClassName(&qu ...

  6. SharePoint 2010/2013 隐藏的速度下拉菜单列表项

    SharePoint 2010/2013 隐藏的速度下拉菜单列表项         有时为了防止一些用户编辑列表项.需要隐藏下拉菜单列表项.,仅仅须要添加一个内容编辑器控件,将css代码写入其HTML ...

  7. so文件成品评论【整理】

    这是我的 @布加迪20 AZ在一篇文章中写道:<汉化so文件的心得>中的技术附件做的简洁性整理.原来的看起来不是非常方便.一起分享学习.. 正文 SO文件汉化心得 --By布加迪20   ...

  8. STL关联式容器之set和multiset

    一,set和multiset的基础知识 1.set和multiset的基础 set是一个集合容器,其中所包含的元素是唯一的,集合中的元素按照一定的顺序排列,元素插入过程是按照排序规则插入的.所以不能指 ...

  9. go 工具链目前[不支持编译 windows 下的动态链接库][1],不过[支持静态链接库][2]

    go 工具链目前[不支持编译 windows 下的动态链接库][1],不过[支持静态链接库][2].想要产生dll,可以这样 workaround ,参考 golang [issuse#11058][ ...

  10. 3-2 从降级的例子 认识Polly套路

    1 没有返回值的降级 Policy policy = Policy.Handle<Exception>().Fallback(() => { Console.WriteLine(&q ...