Example #1
0
        /// <summary>
        /// 获得数据列表
        /// </summary>
        /// <returns></returns>
        public static List <FilePermissionInfo> GetList()
        {
            string cacheKey = GetCacheKey();

            //本实体已经注册成缓存实体,并且缓存存在的时候,直接从缓存取
            if (CachedEntityCommander.IsTypeRegistered(typeof(FilePermissionInfo)) && CachedEntityCommander.GetCache(cacheKey) != null)
            {
                return(CachedEntityCommander.GetCache(cacheKey) as List <FilePermissionInfo>);
            }
            else
            {
                List <FilePermissionInfo> list       = new List <FilePermissionInfo>();
                FilePermissionCollection  collection = new  FilePermissionCollection();
                Query qry = new Query(FilePermission.Schema);
                collection.LoadAndCloseReader(qry.ExecuteReader());
                foreach (FilePermission filePermission in collection)
                {
                    FilePermissionInfo filePermissionInfo = new FilePermissionInfo();
                    LoadFromDAL(filePermissionInfo, filePermission);
                    list.Add(filePermissionInfo);
                }
                //生成缓存
                if (CachedEntityCommander.IsTypeRegistered(typeof(FilePermissionInfo)))
                {
                    CachedEntityCommander.SetCache(cacheKey, list);
                }
                return(list);
            }
        }
Example #2
0
        /// <summary>
        /// 获得分页列表,无论是否是缓存实体都从数据库直接拿取数据
        /// </summary>
        /// <param name="pPageIndex">页数</param>
        /// <param name="pPageSize">每页列表</param>
        /// <param name="pOrderBy">排序</param>
        /// <param name="pSortExpression">排序字段</param>
        /// <param name="pRecordCount">列表行数</param>
        /// <returns>数据分页</returns>
        public static List <FilePermissionInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount)
        {
            if (pPageIndex <= 1)
            {
                pPageIndex = 1;
            }
            List <FilePermissionInfo> list = new List <FilePermissionInfo>();

            Query q = FilePermission.CreateQuery();

            q.PageIndex = pPageIndex;
            q.PageSize  = pPageSize;
            q.ORDER_BY(pSortExpression, pOrderBy.ToString());
            FilePermissionCollection collection = new  FilePermissionCollection();

            collection.LoadAndCloseReader(q.ExecuteReader());

            foreach (FilePermission filePermission  in collection)
            {
                FilePermissionInfo filePermissionInfo = new FilePermissionInfo();
                LoadFromDAL(filePermissionInfo, filePermission);
                list.Add(filePermissionInfo);
            }
            pRecordCount = q.GetRecordCount();

            return(list);
        }
Example #3
0
 /// <summary>
 /// 批量装载
 /// </summary>
 internal static void LoadFromDALPatch(List <FilePermissionInfo> pList, FilePermissionCollection pCollection)
 {
     foreach (FilePermission filePermission in pCollection)
     {
         FilePermissionInfo filePermissionInfo = new FilePermissionInfo();
         LoadFromDAL(filePermissionInfo, filePermission);
         pList.Add(filePermissionInfo);
     }
 }
        public void Test_FromString_NullInput()
        {
            var collection = FilePermissionCollection.FromString(null);

            Assert.IsFalse(collection.User.CanRead);
            Assert.IsFalse(collection.User.CanWrite);
            Assert.IsFalse(collection.User.CanExecute);
            Assert.AreEqual(0, collection.User.NumericValue);

            Assert.IsFalse(collection.Group.CanRead);
            Assert.IsFalse(collection.Group.CanWrite);
            Assert.IsFalse(collection.Group.CanExecute);
            Assert.AreEqual(0, collection.Group.NumericValue);

            Assert.IsFalse(collection.Other.CanRead);
            Assert.IsFalse(collection.Other.CanWrite);
            Assert.IsFalse(collection.Other.CanExecute);
            Assert.AreEqual(0, collection.Other.NumericValue);

            Assert.AreEqual(0, collection.NumericValue);
            Assert.AreEqual("---------", collection.ToString());
        }
        public void Test_FromString_FullPermissions()
        {
            var inputString = "rwxrwxrwx";
            var collection  = FilePermissionCollection.FromString(inputString);

            Assert.IsTrue(collection.User.CanRead);
            Assert.IsTrue(collection.User.CanWrite);
            Assert.IsTrue(collection.User.CanExecute);
            Assert.AreEqual(7, collection.User.NumericValue);

            Assert.IsTrue(collection.Group.CanRead);
            Assert.IsTrue(collection.Group.CanWrite);
            Assert.IsTrue(collection.Group.CanExecute);
            Assert.AreEqual(7, collection.Group.NumericValue);

            Assert.IsTrue(collection.Other.CanRead);
            Assert.IsTrue(collection.Other.CanWrite);
            Assert.IsTrue(collection.Other.CanExecute);
            Assert.AreEqual(7, collection.Other.NumericValue);

            Assert.AreEqual(777, collection.NumericValue);
            Assert.AreEqual(inputString, collection.ToString());
        }
Example #6
0
 /// <summary>
 /// 批量装载
 /// </summary>
 internal static void LoadFromDALPatch(List< FilePermissionInfo> pList, FilePermissionCollection pCollection)
 {
     foreach (FilePermission filePermission in pCollection)
     {
         FilePermissionInfo filePermissionInfo = new FilePermissionInfo();
         LoadFromDAL(filePermissionInfo, filePermission );
         pList.Add(filePermissionInfo);
     }
 }
Example #7
0
        /// <summary>
        /// 获得分页列表,无论是否是缓存实体都从数据库直接拿取数据
        /// </summary>
        /// <param name="pPageIndex">页数</param>
        /// <param name="pPageSize">每页列表</param>
        /// <param name="pOrderBy">排序</param>
        /// <param name="pSortExpression">排序字段</param>
        /// <param name="pRecordCount">列表行数</param>
        /// <returns>数据分页</returns>
        public static List<FilePermissionInfo> GetPagedList(int pPageIndex,int pPageSize,SortDirection pOrderBy,string pSortExpression,out int pRecordCount)
        {
            if(pPageIndex<=1)
            pPageIndex=1;
            List< FilePermissionInfo> list = new List< FilePermissionInfo>();

            Query q = FilePermission .CreateQuery();
            q.PageIndex = pPageIndex;
            q.PageSize = pPageSize;
            q.ORDER_BY(pSortExpression,pOrderBy.ToString());
            FilePermissionCollection  collection=new  FilePermissionCollection();
             	collection.LoadAndCloseReader(q.ExecuteReader());

            foreach (FilePermission  filePermission  in collection)
            {
                FilePermissionInfo filePermissionInfo = new FilePermissionInfo();
                LoadFromDAL(filePermissionInfo,   filePermission);
                list.Add(filePermissionInfo);
            }
            pRecordCount=q.GetRecordCount();

            return list;
        }
Example #8
0
 /// <summary>
 /// 获得数据列表
 /// </summary>
 /// <returns></returns>
 public static List<FilePermissionInfo> GetList()
 {
     string cacheKey = GetCacheKey();
     //本实体已经注册成缓存实体,并且缓存存在的时候,直接从缓存取
     if (CachedEntityCommander.IsTypeRegistered(typeof(FilePermissionInfo)) && CachedEntityCommander.GetCache(cacheKey) != null)
     {
         return CachedEntityCommander.GetCache(cacheKey) as List< FilePermissionInfo>;
     }
     else
     {
         List< FilePermissionInfo>  list =new List< FilePermissionInfo>();
         FilePermissionCollection  collection=new  FilePermissionCollection();
         Query qry = new Query(FilePermission.Schema);
         collection.LoadAndCloseReader(qry.ExecuteReader());
         foreach(FilePermission filePermission in collection)
         {
             FilePermissionInfo filePermissionInfo= new FilePermissionInfo();
             LoadFromDAL(filePermissionInfo,filePermission);
             list.Add(filePermissionInfo);
         }
       	//生成缓存
         if (CachedEntityCommander.IsTypeRegistered(typeof(FilePermissionInfo)))
         {
             CachedEntityCommander.SetCache(cacheKey, list);
         }
         return list;
     }
 }
Example #9
0
 public void Test_FromString_InvalidInput()
 {
     FilePermissionCollection.FromString("------abc123");
 }