using System; using System.Configuration; using System.Collections.Generic; using System.Linq; using System.Text; using QMFrameWork.ServiceLibrary; using QMFrameWork.Cache; namespace QMFrameWork.ServiceLibrary { /// <summary> /// 服务引擎 /// </summary> public class ServiceEngine { /// <summary> /// 启动 /// <param name="businessDllList">服务资源路径</param> /// <param name="businessDllPath">服务资源列表文件</param> /// </summary> public static void Start(string businessDllPath, List<string> serviceFiles) { //装配数据工厂 QMFrameWork.Data.DataFactory.Configure(true); //加载静态基础数据 QMFrameWork.Common.Util.ModelDictionaryHandler.Configure(); //初始缓存 CacheManager.Config(); //启动数据实体缓存 DataEntityCache(); //加载业务服务 if (string.IsNullOrEmpty(ConfigurationManager.AppSettings["ServiceCredential"]) == false) AuthorizationManager.ServiceCredential = ConfigurationManager.AppSettings["ServiceCredential"]; ServiceFactory.BusinessDllPath = businessDllPath; foreach (string file in serviceFiles) { ServiceFactory.Configure(file); } } /// <summary> /// 停止 /// </summary> public static void Stop() { QMFrameWork.Data.DataFactory.Stop(); EntityCacheManager.Stop(); } //启动数据实体缓存 public static void DataEntityCache() { #region 定义 EntityCacheManager.DayCacheHelperList = new List<IEntityCacheHelper>(); //用户信息缓存 //EntityCacheHelper<UserCacheInfo> userCacheHelper = new EntityCacheHelper<UserCacheInfo>(); //userCacheHelper.GetListTool = new QMAPP.BLL.DataCache.GetUserCacheBLL(); //EntityCacheManager.DayCacheHelperList.Add(userCacheHelper); #endregion //设置 EntityCacheManager.DayCacheLoadTime = TimeSpan.Parse("00:10:00"); //启动 EntityCacheManager.Start(); } } }