xml数据存放在HashTable中(这样会比较快速查询),把HashTable中的数据放在缓存中(比较频繁使用的数据),更改xml数据时更新缓存中的数据,怎么实现呢?

解决方案 »

  1.   

    把 xml 序列化成类实例
    把类实例放到list 集合或者 HashTable中操作
      

  2.   

    会“放”不会“改”么?修改集合中一个单元,你就赋值就行了。例如dic[123]= x;或者dic["abc"]= x;或者是先删除然后插入。
      

  3.   

    说道.net的进程内缓存机制,要懂得的模式是学会 System.Web.Caching.Cache 类的使用,特别是懂得其方法
    public void Insert(string key, object value, CacheDependency dependencies)
    的第三个参数既CacheDependency的机制。而不是把什么“在(过时的)HashTable或者(现在正用的)Dictionary中保存一堆数据”就叫做“缓存”。这种错误的缓存概念下,你放入了一大堆命中率为0的无用数据,浪费了宝贵的内存,而且也不能保证每一个单元变脏时自动刷新(因为你不可能频繁“抖动”地一遍遍重件这种所谓的缓存)。
      

  4.   

    我是个新手,才接触到缓存,但是你给的CacheDependency这个对我还是很有用的,谢谢!!!