c#依赖文件缓存

        public  void RemovedCallbackRole(string key, object value, CacheItemRemovedReason reason)
        {
            // 在应用程序启动时运行的代码
            BLL.JUESE bll = new BLL.JUESE();
            //显示当前时间,以便判断是否为缓存中页面
            //缓存依赖于文件TextFile.txt
            //string fileDependencyPath = "F:\\View\\code\\cm1test\\Web\\TextFile.txt";
            // 设置缓存的过期时间为120秒。
            DataTable dt = new DataTable();
            dt = bll.GetList(" isdel='0' ");
            CacheItemRemovedCallback onRemove = new CacheItemRemovedCallback(RemovedCallbackRole);
            //rolefile 文件物理地址
            objCache.Insert("role", dt, new CacheDependency(rolefile), Cache.NoAbsoluteExpiration, Cache.NoSlidingExpiration, CacheItemPriority.High, onRemove);


        }

 

在应用程序的Global文件中声明  Cache objCache = null;

  void Application_Start(object sender, EventArgs e)
    {
            // 在应用程序启动时运行的代码
            objCache = HttpRuntime.Cache;
            RemovedCallbackRole(null, null, 0);

    }

    void Application_End(object sender, EventArgs e)
        {
            //  在应用程序关闭时运行的代码
            HttpRuntime.Cache.Remove("role");
        }

在ORacle数据库中创建触发器,当角色表变动的时候更新依赖的文件内容

创建一个directory:

create or replace directory FILEPATH as '依赖文件的路径';
grant read,write on directory FILEPATH to 数据库用户;

例如:
create or replace directory FILENAME as 'C:\cc';

grant read, write on directory FILENAME to FLZD


创建触发器:

CREATE OR REPLACE TRIGGER "TEST_ROLE" AFTER
INSERT
OR UPDATE
OR DELETE OF "NAME","ROLETYPE" ON "USER"."ROLE"
DECLARE
filehandle utl_file.file_type;
BEGIN
--第三个参数为打开模式,包括'r', 'w', 'a' 'rb', 'wb', 'ab'六种
--'r':读文件,一定要保证有该文件,不然会报UTL_FILE.INVALID_PATH异常
--'w':写文件,没有该文件的话会自动添加;有的话会覆盖
--'a':追加文件,一定要保证有该文件,在已有文件内容后追加内容
--带有'b'后缀的为使用byte模式,BLOB与VARCHAR2不一样,BLOB打开时一定要用带有'b'后缀的模式
filehandle := utl_file.fopen('FILENAME','HELLO.txt','w'); --打开文件
utl_file.put_line(filehandle,'Hello Oracle!');--写入一行记录
utl_file.put_line(filehandle,to_char(SYSDATE,'yyyy-mm-dd hh24:mi:ss'));
utl_file.fclose(filehandle);--关闭句柄
END;

 
 

 

posted @ 2015-09-30 10:01  石中隐鱼  阅读(546)  评论(0编辑  收藏  举报