博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
silverlight 数据库更新,UI控件同步更新
阅读量:7069 次
发布时间:2019-06-28

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

UI和他绑定的数据模型和数据库(Model) 是分离的三个层面的东西。 我们INotifyPropertyChanged实现的是数据模型到绑定UI的一个通知功能,然后让UI绑定能够去拿到更新后的数据模型的新值。

但是,数据库和数据模型之间是一个单向的关系,都是数据模型去查询去更新数据库,数据库并不会主动地更新和通知数据模型,这个是非常明确的。

所以只用INotifyPropertyChanged是无法实现当数据库更新,UI控件同步的更新。

第一种方法:目前我采用的方法是:利用Timer或者dispatcherTimer。通过定时地查询数据库,来更新数据模型。 一旦数据库更新了,在一个查询周期后,查询到了新的值,数据模型更新就可以同时通知UI去更新UI。

但是这种方法有一个缺点那就是不断隔一段时间查询数据库。影响程序响应速度和性能,也会加大客户端下载量。也很费服务器的流量。

第二种方法: 用FileSystemWatcher这个类监视数据文件。比如监视sql server .mdf,.ldf文件。xml文件。但是这也有一定局限那就是如果数据库文件存放的服务器如果和web服务器不在同一个服务器。就没法监视了。

目前还没有更好的方法。如果哪位有更好的方法请不吝赐教。

 

 

转载地址:http://pohll.baihongyu.com/

你可能感兴趣的文章
LeetCode OJ - LRU Cache
查看>>
iOS边练边学--Http网络再学习,简单介绍
查看>>
开发Chrome 扩展程序Hello
查看>>
while循环习题
查看>>
状态压缩入门
查看>>
LeetCode - Remove Nth Node From End of List
查看>>
C++亲密史 16章
查看>>
tornado 之 csrf
查看>>
Go语言中的Package问题
查看>>
SQL注入攻击与防御第二版读书笔记——利用SQL注入
查看>>
Spring 部分常用注解
查看>>
Django and Scrapy 用法图片
查看>>
【Lua】协程的原理
查看>>
poj 3040 Allowance
查看>>
线程的声明周期
查看>>
mysql5.1改字符编码与启动问题
查看>>
(转)C# 自定义公式计算 字符串转换为计算公式,并得出计算结果
查看>>
手术相关表和手术状态变化值
查看>>
vs调试 LINK : fatal error LNK1104 ...exe
查看>>
SPSS-非参数检验—两独立样本检验 案例解析(转)
查看>>