コード例 #1
0
ファイル: RoleCache.cs プロジェクト: pingbc/EntityModel
 /// <summary>
 ///     缓存所有角色的页面权限数据
 /// </summary>
 public void DoCache()
 {
     using (var proxy = new RedisProxy(RedisProxy.DbSystem))
     {
         proxy.FindAndRemoveKey("role:*");
     }
     using (SystemContextScope.CreateScope())
     {
         var access = new RoleDataAccess();
         var roles  = access.All();
         using (var proxy = new RedisProxy(RedisProxy.DbSystem))
         {
             proxy.CacheData(roles);
         }
         using (var proxy = new RedisProxy(RedisProxy.DbSystem))
         {
             CreatePowerTree(proxy);
         }
         using (var proxy = new RedisProxy(RedisProxy.DbSystem))
         {
             LoadAllPowers(0, proxy);
             foreach (var items in roles)
             {
                 LoadAllPowers(items.Id, proxy);
             }
         }
     }
     CachePageAuditUser();
     CacheTypeUser();
 }