示例#1
0
        /// <summary>
        /// 保存设置
        /// </summary>
        /// <param name="key"></param>
        /// <param name="value"></param>
        /// <param name="context"></param>
        public async Task SetItem(string key, string value, Data.ApiDbContext context)
        {
            if (settingsMap == null && context != null)
            {
                ReloadSettingsFromDb(context);
            }

            settingsMap[key] = value;
            //save to db
            var item = await context.Settings.FindAsync(key);

            if (item == null)
            {
                item       = new SettingsItem();
                item.Key   = key;
                item.Value = value;
                context.Settings.Add(item);
            }
            else
            {
                item.Value = value;
            }

            await context.SaveChangesAsync();
        }
示例#2
0
        public FilesController(Data.ApiDbContext context, IHostingEnvironment env)
        {
            repo    = new Repository <FileAsset>(context);
            hostEnv = env;

            uploadPath = hostEnv.WebRootPath + "/upload/";
            if (Directory.Exists(uploadPath) == false)
            {
                Directory.CreateDirectory(uploadPath);
            }
        }
示例#3
0
        /// <summary>
        /// 从内存缓存中获取指定的设置项
        /// </summary>
        /// <param name="key"></param>
        /// <param name="context"></param>
        /// <returns></returns>
        public string GetItem(string key, Data.ApiDbContext context = null)
        {
            if (settingsMap == null && context != null)
            {
                ReloadSettingsFromDb(context);
            }

            string value = "";

            settingsMap.TryGetValue(key, out value);
            return(value);
        }
示例#4
0
        /// <summary>
        /// 从数据库重新加载全局设置
        /// </summary>
        public void ReloadSettingsFromDb(Data.ApiDbContext context)
        {
            settingsMap = new ConcurrentDictionary <string, string>();

            foreach (var item in context.Settings)
            {
                if (item == null || string.IsNullOrEmpty(item.Key))
                {
                    continue;
                }
                settingsMap[item.Key] = item.Value;
            }
        }
示例#5
0
        public async Task <bool> DeleteItem(string key, Data.ApiDbContext context)
        {
            string value;

            settingsMap.Remove(key, out value);
            var item = await context.Settings.FindAsync(key);

            if (item == null)
            {
                return(false);
            }

            context.Settings.Remove(item);
            await context.SaveChangesAsync();

            return(true);
        }
        /// <summary>
        /// 保存设置
        /// </summary>
        /// <param name="key"></param>
        /// <param name="value"></param>
        /// <param name="context"></param>
        public void SetItem(string key, string value, Data.ApiDbContext context)
        {
            settingsMap[key] = value;
            //save to db
            var item = context.Settings.Find(key);

            if (item == null)
            {
                item       = new ApiModel.SettingsItem();
                item.Key   = key;
                item.Value = value;
                context.Settings.Add(item);
            }
            else
            {
                item.Value = value;
            }

            context.SaveChangesAsync();
        }
 public MaterialController(Data.ApiDbContext context)
 {
     repo = new Repository <Material>(context);
 }
 public OrdersController(Data.ApiDbContext context)
 {
     repo = new Repository <Order>(context);
 }
示例#9
0
 public SettingsController(Data.ApiDbContext context)
 {
     this.context = context;
 }
示例#10
0
 public AccountController(Data.ApiDbContext context)
 {
     accountMan = new AccountMan(context);
 }
示例#11
0
        public async Task SetItem <T>(string key, T value, Data.ApiDbContext context) where T : class
        {
            string vs = Newtonsoft.Json.JsonConvert.SerializeObject(value);

            await SetItem(key, vs, context);
        }
 public ProductsController(Data.ApiDbContext context)
 {
     repo = new Repository <Product>(context);
 }
示例#13
0
 public LayoutController(Data.ApiDbContext context)
 {
     repo = new Repository <Layout>(context);
 }
 public SolutionController(Data.ApiDbContext context)
 {
     repo = new Repository <Solution>(context);
 }
示例#15
0
 public AccountMan(Data.ApiDbContext context)
 {
     this.context = context;
 }
示例#16
0
 public ValuesController(Data.ApiDbContext dbcontext)
 {
     var context = dbcontext;
 }
 public ClientAssetsController(Data.ApiDbContext context)
 {
     repo = new Repository <ClientAsset>(context);
 }
 public StaticMeshController(Data.ApiDbContext context)
 {
     repo = new Repository <StaticMesh>(context);
 }
示例#19
0
 public AuthMan(Controller controller, Data.ApiDbContext context)
 {
     this.controller = controller;
     this.context    = context;
 }
示例#20
0
 public TokenController(Data.ApiDbContext context)
 {
     authman = new Services.AuthMan(this, context);
 }