像省份,城市,行业,公司性质这种表,几乎每个登陆者都要获取,但是这些表的数据几个月,一年都没有什么变化。但是用到他们的时候很多,每次都去读数据库,很占用资源啊。有什么解决方案吗?
比如把他们全部读出来,放到Global.asax文件里面?
还有什么好的解决方案吗?

解决方案 »

  1.   

    如果你存的仅仅是名字,比如"黑龙江省"这四个字符,那么还真没必要从数据库读取……但做关联下拉列表时,如果保存的是 id,极端的想,还是会出现,县市成绩升级的情况,hehe。
    不过可以在程序版本升级的时候修改。不过,为了避免修改麻烦,能放在一个地方就不要分两个地方。然后提供接口给各种客户端使用。
      

  2.   

    1、存缓存中。
    2、放到文件中,比如:JS数组或JSON字符串、XML文件中等。
    3、直接做成控件。方法很多,主要得根据你们项目里的需求。
      

  3.   

    ASP.Net支持缓存机制,而且数据改变后会自动更新到内存中的。
      

  4.   

    用xml吧,数据库就是用来处理数据,省份这些没必要放进去
      

  5.   

    把这部分数据缓存起来。
    可以用这个来实现System.Web.Caching
    例如用来保存数据的缓存是Cache["data"],些个属性去获取缓存的数据,
    如果Cache["data"]==null,那么就去数据库读取数据,如果Cache["data"]!=null直接返回Cache["data"]