//数据持久化 internal static void SaveToDb(ContractTypeInfo pContractTypeInfo, ContractType pContractType, bool pIsNew) { pContractType.ContractTypeId = pContractTypeInfo.contractTypeId; pContractType.ContractTypeName = pContractTypeInfo.contractTypeName; pContractType.IsNew = pIsNew; string UserName = SubsonicHelper.GetUserName(); try { pContractType.Save(UserName); } catch (Exception ex) { LogManager.getInstance().getLogger(typeof(ContractTypeInfo)).Error(ex); if (ex.Message.Contains("插入重复键")) //违反了唯一键 { throw new AppException("此对象已经存在"); //此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示 } throw new AppException("保存失败"); } pContractTypeInfo.contractTypeId = pContractType.ContractTypeId; //如果缓存存在,更新缓存 if (CachedEntityCommander.IsTypeRegistered(typeof(ContractTypeInfo))) { ResetCache(); } }
/// <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 <ContractTypeInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount) { if (pPageIndex <= 1) { pPageIndex = 1; } List <ContractTypeInfo> list = new List <ContractTypeInfo>(); Query q = ContractType.CreateQuery(); q.PageIndex = pPageIndex; q.PageSize = pPageSize; q.ORDER_BY(pSortExpression, pOrderBy.ToString()); ContractTypeCollection collection = new ContractTypeCollection(); collection.LoadAndCloseReader(q.ExecuteReader()); foreach (ContractType contractType in collection) { ContractTypeInfo contractTypeInfo = new ContractTypeInfo(); LoadFromDAL(contractTypeInfo, contractType); list.Add(contractTypeInfo); } pRecordCount = q.GetRecordCount(); return(list); }
/// <summary> /// 获得数据列表 /// </summary> /// <returns></returns> public static List <ContractTypeInfo> GetList() { string cacheKey = GetCacheKey(); //本实体已经注册成缓存实体,并且缓存存在的时候,直接从缓存取 if (CachedEntityCommander.IsTypeRegistered(typeof(ContractTypeInfo)) && CachedEntityCommander.GetCache(cacheKey) != null) { return(CachedEntityCommander.GetCache(cacheKey) as List <ContractTypeInfo>); } else { List <ContractTypeInfo> list = new List <ContractTypeInfo>(); ContractTypeCollection collection = new ContractTypeCollection(); Query qry = new Query(ContractType.Schema); collection.LoadAndCloseReader(qry.ExecuteReader()); foreach (ContractType contractType in collection) { ContractTypeInfo contractTypeInfo = new ContractTypeInfo(); LoadFromDAL(contractTypeInfo, contractType); list.Add(contractTypeInfo); } //生成缓存 if (CachedEntityCommander.IsTypeRegistered(typeof(ContractTypeInfo))) { CachedEntityCommander.SetCache(cacheKey, list); } return(list); } }
/// <summary> /// 批量装载 /// </summary> internal static void LoadFromDALPatch(List <ContractTypeInfo> pList, ContractTypeCollection pCollection) { foreach (ContractType contractType in pCollection) { ContractTypeInfo contractTypeInfo = new ContractTypeInfo(); LoadFromDAL(contractTypeInfo, contractType); pList.Add(contractTypeInfo); } }
public ContractTypeInfo GetContractTypeInfoById(int ContractTypeId) { ContractTypeInfo contractTypeInfo = null;// try { contractTypeInfo = new ContractTypeInfo(ContractTypeId); } catch (AppException) { return null; } return contractTypeInfo; }
public ContractTypeInfo GetContractTypeInfoById(int ContractTypeId) { ContractTypeInfo contractTypeInfo = null; // try { contractTypeInfo = new ContractTypeInfo(ContractTypeId); } catch (AppException) { return(null); } return(contractTypeInfo); }
private void LoadFromId(int contractTypeId) { if (CachedEntityCommander.IsTypeRegistered(typeof(ContractTypeInfo))) { ContractTypeInfo contractTypeInfo = Find(GetList(), contractTypeId); if (contractTypeInfo == null) { throw new AppException("未能在缓存中找到相应的键值对象"); } Copy(contractTypeInfo, this); } else { ContractType contractType = new ContractType(contractTypeId); if (contractType.IsNew) { throw new AppException("尚未初始化"); } LoadFromDAL(this, contractType); } }
public void DeleteById(ContractTypeInfo pContractTypeInfo) { ContractTypeInfo contractTypeInfo = new ContractTypeInfo(pContractTypeInfo.ContractTypeId); contractTypeInfo.Delete(); }
public object SaveContractTypeInfo(ContractTypeInfo contractTypeInfo) { contractTypeInfo.Save(); return contractTypeInfo . ContractTypeId; }
/// <summary> /// 复制为另一个对象 /// </summary> /// <param name="pIndustryTypeInfoTo"></param> public void CopyTo(ContractTypeInfo pContractTypeInfoTo) { Copy(this, pContractTypeInfoTo); }
/// <summary> /// 获得数据列表 /// </summary> /// <returns></returns> public static List<ContractTypeInfo> GetList() { string cacheKey = GetCacheKey(); //本实体已经注册成缓存实体,并且缓存存在的时候,直接从缓存取 if (CachedEntityCommander.IsTypeRegistered(typeof(ContractTypeInfo)) && CachedEntityCommander.GetCache(cacheKey) != null) { return CachedEntityCommander.GetCache(cacheKey) as List< ContractTypeInfo>; } else { List< ContractTypeInfo> list =new List< ContractTypeInfo>(); ContractTypeCollection collection=new ContractTypeCollection(); Query qry = new Query(ContractType.Schema); collection.LoadAndCloseReader(qry.ExecuteReader()); foreach(ContractType contractType in collection) { ContractTypeInfo contractTypeInfo= new ContractTypeInfo(); LoadFromDAL(contractTypeInfo,contractType); list.Add(contractTypeInfo); } //生成缓存 if (CachedEntityCommander.IsTypeRegistered(typeof(ContractTypeInfo))) { CachedEntityCommander.SetCache(cacheKey, list); } return list; } }
/// <summary> /// 复制一个对象,采用硬编码的方式,避免反射的低效 /// </summary> /// <param name="pIndustryTypeInfoFrom"></param> /// <param name="pIndustryTypeInfoTo"></param> public static void Copy(ContractTypeInfo pContractTypeInfoFrom, ContractTypeInfo pContractTypeInfoTo) { pContractTypeInfoTo.ContractTypeId = pContractTypeInfoFrom.contractTypeId; pContractTypeInfoTo.ContractTypeName = pContractTypeInfoFrom.contractTypeName; pContractTypeInfoTo.Loaded=pContractTypeInfoFrom.Loaded; }
/// <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<ContractTypeInfo> GetPagedList(int pPageIndex,int pPageSize,SortDirection pOrderBy,string pSortExpression,out int pRecordCount) { if(pPageIndex<=1) pPageIndex=1; List< ContractTypeInfo> list = new List< ContractTypeInfo>(); Query q = ContractType .CreateQuery(); q.PageIndex = pPageIndex; q.PageSize = pPageSize; q.ORDER_BY(pSortExpression,pOrderBy.ToString()); ContractTypeCollection collection=new ContractTypeCollection(); collection.LoadAndCloseReader(q.ExecuteReader()); foreach (ContractType contractType in collection) { ContractTypeInfo contractTypeInfo = new ContractTypeInfo(); LoadFromDAL(contractTypeInfo, contractType); list.Add(contractTypeInfo); } pRecordCount=q.GetRecordCount(); return list; }
//从后台获取数据 internal static void LoadFromDAL(ContractTypeInfo pContractTypeInfo, ContractType pContractType) { pContractTypeInfo.contractTypeId = pContractType.ContractTypeId; pContractTypeInfo.contractTypeName = pContractType.ContractTypeName; pContractTypeInfo.Loaded = true; }
public object SaveContractTypeInfo(ContractTypeInfo contractTypeInfo) { contractTypeInfo.Save(); return(contractTypeInfo.ContractTypeId); }
/// <summary> /// 复制一个对象,采用硬编码的方式,避免反射的低效 /// </summary> /// <param name="pIndustryTypeInfoFrom"></param> /// <param name="pIndustryTypeInfoTo"></param> public static void Copy(ContractTypeInfo pContractTypeInfoFrom, ContractTypeInfo pContractTypeInfoTo) { pContractTypeInfoTo.ContractTypeId = pContractTypeInfoFrom.contractTypeId; pContractTypeInfoTo.ContractTypeName = pContractTypeInfoFrom.contractTypeName; pContractTypeInfoTo.Loaded = pContractTypeInfoFrom.Loaded; }
public List <ContractTypeInfo> GetContractTypeInfoList() { return(ContractTypeInfo.GetList()); }
public List <ContractTypeInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount) { return(ContractTypeInfo.GetPagedList(pPageIndex, pPageSize, pOrderBy, pSortExpression, out pRecordCount)); }
//数据持久化 internal static void SaveToDb(ContractTypeInfo pContractTypeInfo, ContractType pContractType,bool pIsNew) { pContractType.ContractTypeId = pContractTypeInfo.contractTypeId; pContractType.ContractTypeName = pContractTypeInfo.contractTypeName; pContractType.IsNew=pIsNew; string UserName = SubsonicHelper.GetUserName(); try { pContractType.Save(UserName); } catch(Exception ex) { LogManager.getInstance().getLogger(typeof(ContractTypeInfo)).Error(ex); if(ex.Message.Contains("插入重复键"))//违反了唯一键 { throw new AppException("此对象已经存在");//此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示 } throw new AppException("保存失败"); } pContractTypeInfo.contractTypeId = pContractType.ContractTypeId; //如果缓存存在,更新缓存 if (CachedEntityCommander.IsTypeRegistered(typeof(ContractTypeInfo))) { ResetCache(); } }
/// <summary> /// 批量装载 /// </summary> internal static void LoadFromDALPatch(List< ContractTypeInfo> pList, ContractTypeCollection pCollection) { foreach (ContractType contractType in pCollection) { ContractTypeInfo contractTypeInfo = new ContractTypeInfo(); LoadFromDAL(contractTypeInfo, contractType ); pList.Add(contractTypeInfo); } }
//从后台获取数据 internal static void LoadFromDAL(ContractTypeInfo pContractTypeInfo, ContractType pContractType) { pContractTypeInfo.contractTypeId = pContractType.ContractTypeId; pContractTypeInfo.contractTypeName = pContractType.ContractTypeName; pContractTypeInfo.Loaded=true; }