zoukankan      html  css  js  c++  java
  • silverlight 数据库更新,UI控件同步更新

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

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

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

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

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

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

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

     

  • 相关阅读:
    [HDU 2089]不要62
    [WC 2011]Xor
    [BJOI 2011]元素
    [NOIp 2014]解方程
    [UVa 1326]Jurassic Remains
    [BZOJ 2152]聪聪可可
    [IOI 2011]Race
    [测试题]打地鼠
    [POJ 2828]Buy Tickets
    [测试题]gene
  • 原文地址:https://www.cnblogs.com/sunxi/p/2873935.html
Copyright © 2011-2022 走看看