问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C#怎样开发数据库离线应用

发布网友 发布时间:2022-04-13 07:25

我来回答

2个回答

懂视网 时间:2022-04-13 11:47

所谓离线应用,就是在离线时能够把数据存储到本地,在线时同步到服务器上。HTML5提供了程序缓存和本地存储两种机制来实现, 可以用cache manifest和indexedDB来搜索相关内容。各个浏览器对此支持都不太一样,本文尝试出一种可行的方案。 程序缓存 程序缓存比

所谓离线应用,就是在离线时能够把数据存储到本地,在线时同步到服务器上。HTML5提供了程序缓存和本地存储两种机制来实现, 可以用cache manifest和indexedDB来搜索相关内容。各个浏览器对此支持都不太一样,本文尝试出一种可行的方案。

程序缓存

程序缓存比较容易设置,只要写一个.manifest文件,服务器空间,再把它写到html元素的属性就可以了。我遇到的一些问题:

因此对离线应用而言,我认为程序缓存的作用就是保存静态文件。

本地存储与数据库

据说浏览器限制本地存储为5M,所以就不考虑了。主要是利用浏览器支持的indexedDB来完成数据操作。

数据流/对象交互设计

浏览器中的视图view一般直接从服务器中存取数据。考虑了离线应用之后,需要加入一个中介mediator,如上图所示,为视图屏蔽掉在线与离线的区别,简化视图设计。在此有两者实现方式:

1. 以原有的在线方式为主,在原有的数据流上开分路。好处是不改变原有的数据格式,服务器空间,不中断原来网站的运行。

2. 以离线方式为主,无论在线与否,视图都只对indexedDB进行数据存取,在后台进行indexedDB与服务器的数据复制replication。

方式1的测试成本要比方式2高一些。方式1要测试视图到服务器,视图到indexedDB和indexedDB到服务器三条路径。方式2只要测试视图到indexedDB和indexedDB到服务器两条路径。因此我选择了方式2。

数据复制replication

视图到indexedDB的数据存取理论上是比较容易的,实际上有很多莫名其妙的地方。这里只讨论数据复制。需要考虑的是数据的版本控制。

  • 复制前没人改过数据,本地数据版本与服务器版本一致,开启数据复制过程。
  • 复制前有人已经改过数据了,本地数据版本比服务器版本低。此时可提示用户选择如何进行数据操作。这种情况我没有测试。
  • 复制过程需要考虑数据表中每一条数据的状态,其转换图如下:

    总结

    从本文的方案可以看出,离线应用的难题在于本地数据与服务区数据的同步,网站空间,最好能得到浏览器的支持。

    热心网友 时间:2022-04-13 08:55

    软件如果依靠数据库运行,必须与数据库进行连接,程序一般都是完成一个数据库操作后,即刻就会关闭连接,这样可以保证数据库的运行效率。离线的数据库应用,一般是在特殊情况下,难以保证数据库可随时连接的情况下,多用于移动平台,由于地点不同,有时可能连不上网络,而无法连接数据库,这样的情况,可通过临时数据文件做中转,在无法连接数据库时,将需要保存数据库的数据暂时存放在临时文件中,临时文件可采用文本、二进制或者XML都可以。在能够连接数据库时,第一时间与数据库同步数据更新。
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    北京注册成立一个公司需要多少钱 北京公司都是什么 手机导航地图语音怎么下载 如何分别真金和仿金首饰 怎样区分真金和仿金首饰呢 小学生新年晚会主持人的串词!!(不要太多)急 大大后天就需要了!!!_百度... 周年晚会策划公司 奥格瑞玛传送门大厅在哪 奥格瑞玛传送门大厅怎么走 锻炼颈椎的几个动作 水多久能结冰 冰能在多长时间内形成 维多利亚号游轮的介绍 维多利亚凯蒂号和黄金游轮哪个好 长江游轮凯蒂号有游泳池吗 维多利亚——凯珍的游轮介绍 怎样更改手机qq的密码? 手机登陆QQ2007版如何修改密码? 查看车贷额度需要下载什么软件? 一个手机登录了快手直播地二个苹果手机怎么用同一帐号开直播? 俄罗斯的英文简介 俄语的英文是什么? 密码验证码还有什么码 俄罗斯的英文怎么说 校验码有哪些? “俄罗斯”的英语怎么读? “俄罗斯”的英文是什么? 俄罗斯英文怎么写 “俄罗斯”用英语怎么说? 俄罗斯的英文单词是哪些 俄罗斯英文怎么说? 有什么折磨男人的动画片或者漫画? 西安到三峡 小米2手机怎么装电话卡? 小米2手机怎么装卡? 小米手机2如何放置SD卡 小米2手机怎么装电话卡怎么装电话卡 小米2a手机卡怎么安装 怎么设置路由器可以增强穿墙能力 怎样才能让无限路由器信号变强点,穿透力大点? 有没有增加wifi穿透力路由器或者办法? 怎么提高路由器的穿墙能力? tp路由器穿透力设置方法 求关于宽容的作文素材 有没有体现“宽容”的作文素材,真的假的 求有关宽容的素材 作文素材——宽容 有关于“宽容”的作文素材。 要求:真实名人事例,名人名言,趣闻轶事等都可以 凡认真回答者必一一答谢 关于“宽容”的写作材料 宽容是一种温暖人心的力量作文素材 我需要关于宽容的素材,最好有名的例子 宽容为题材料作文