使用托管代码开发WINCE自带数据库

简介:
+关注继续查看

在Windows Mobile上使用WINCE自带数据库》中,讲述了在Windows Mobile上使用native code来开发WINCE自带数据库的方法,并给出了例子。现在很多人都使用C#来开发windows mobile上的应用程序,因此,有必要给出这个“使用托管代码开发WINCE自带数据库”的例子。这篇文章参考了Joao Paulo Figueira在2005年写的文章《CEDB .NET,并对作者给出的代码稍微地做了一下修改,源代码下载链接在文章的最后给出。

    在源代码工程中,实现的类包括以下11个,每个类包含在一个.cs文件中,位于"paltform文件夹下,如下图1所示:

图1:文件目录结构

CeDbApi-利用P/Invoke引用操作CE属性数据库的API,包括coredllCeDbNet

Exception-抛出的异常。

CeDbInfo-封装了CEDBASEINFO结构。

CeDbProperty-封装了CeDb的属性

CeDbPropertyCollection-封装了CeDb属性的集合,可以通过属性ID来搜索。

CeDbPropertyID-一个利用属性ID的静态类。

CeDbRecord-CeDb的记录模块化。

CeDbRecordSet-实现数据的获取。

CeDbTable-标识某个volume中的一个数据库。

CeDbVolume-标识一个volume

CeOidInfo-获取一个现存数据库的信息。

 

    实例工程包括两个Form,主窗口(FormMain)显示数据库中已有的联系人信息,并将文件操作(Load 、Exit)放到主菜单中,如下图2所示:

图2:程序主窗口

    联系人信息输入窗口(AddContaceForm)显示需要输入联系人的具体信息,如下图3所示:

图3:联系人信息输入窗口

    操作时,在主窗口中长击,就会出现一个context menu,包含NewDeleteProperties操作,分别表示新建联系人、删除联系人和联系人属性。以新建联系人为例,所做的操作如下图4所示:

图4:新建联系人操作

    当需要对所输入的联系人进行修改时,可以在该联系人上长击,在弹出的菜单中选择Properties,然后对其进行修改,并保存结果,如下图5所示:

5:联系人属性修改操作

 

参考链接:

dearsj001在Windows Mobile上使用WINCE自带数据库

Joao Paulo FigueiraCEDB .NET

源代码工程文件:CEDB.rar

开发环境:visual studio 2005+Pocket PC 2003 SDK



本文转自施炯博客园博客,原文链接:,如需转载请自行联系原作者

相关文章
|
4天前
|
存储 安全 API
8.5 Windows驱动开发:内核注册表增删改查
注册表是Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息,注册表是一个巨大的树形结构,无论在应用层还是内核层操作注册表都有独立的API函数可以使用,而在内核中读写注册表则需要使用内核装用API函数,如下将依次介绍并封装一些案例,实现对注册表的创建,删除,更新,查询等操作。在Windows内核中,注册表是一种存储系统配置信息的机制,包括应用程序、硬件、驱动程序和操作系统的各种设置。内核提供了一些API函数,可以让驱动程序通过代码访问和修改注册表,以实现系统的配置和管理。下面简单介绍一下内核中的注册表增删改查操作:
8.5 Windows驱动开发:内核注册表增删改查
|
7月前
|
SQL 数据可视化 数据库
Django框架开发006期 使用sqlite3命令行工具管理数据库
Django框架开发006期 使用sqlite3命令行工具管理数据库
250 0
|
12月前
|
网络协议 安全 关系型数据库
Unity面试题——服务器数据库等杂项
Unity面试题——服务器数据库等杂项
91 0
|
SQL 数据库 C++
Visual Studio2017 数据库架构比较
原文:Visual Studio2017 数据库架构比较 一、前言 开发的时候在测试服务器上和线网服务器上面都有我们的数据库,当我们在线网上面修改或者新增一些字段后,线网的数据库也需要更新,这个时候根据表的修改记录,然后在线网上面一个一个增加修改很浪费效率而且容易出错,那有没有更好的方法解决这个问题呢?有!那就是VS自带的架构比较功能。
1229 0
|
数据库 数据安全/隐私保护
|
Web App开发 关系型数据库 MySQL
相关产品
云迁移中心
推荐文章
更多