コード例 #1
0
        private void Set(string name, string value)
        {
            if (!CanSet)
            {
                throw new NotSupportedException("Key for read only.");
            }

            if (!ManagedKeys.Contains(name))
            {
                if (Additional.ContainsKey(name))
                {
                    Additional[name] = value;
                }
                else
                {
                    Additional.Add(name, value);
                }
                return;
            }

            var tenant = CoreBaseSettings.Standalone
                             ? Tenant.DEFAULT_TENANT
                             : TenantManager.GetCurrentTenant().TenantId;

            CoreSettings.SaveSetting(GetSettingsKey(name), value, tenant);
        }
コード例 #2
0
        public IActionResult SaveSettings([FromBody] CoreSettingsModel model)
        {
            try
            {
                if (model == null || string.IsNullOrEmpty(model.Key))
                {
                    return(BadRequest(new
                    {
                        error = "params",
                        message = "Key is empty"
                    }));
                }

                if (string.IsNullOrEmpty(model.Value))
                {
                    return(BadRequest(new
                    {
                        error = "params",
                        message = "Value is empty"
                    }));
                }

                var tenant = model.Tenant;

                if (tenant < -1)
                {
                    tenant = -1;
                }

                CoreSettings.SaveSetting(model.Key, model.Value, tenant);

                var settings = CoreSettings.GetSetting(model.Key, tenant);

                return(Ok(new
                {
                    settings
                }));
            }
            catch (ArgumentException ae)
            {
                Log.Error(ae);

                return(StatusCode(StatusCodes.Status500InternalServerError, new
                {
                    error = "params",
                    message = ae.Message
                }));
            }
            catch (Exception e)
            {
                Log.Error(e);

                return(StatusCode(StatusCodes.Status500InternalServerError, new
                {
                    error = "error",
                    message = e.Message
                }));
            }
        }
コード例 #3
0
        public string GetDocDbKey()
        {
            const string dbKey     = "UniqueDocument";
            var          resultKey = CoreSettings.GetSetting(dbKey);

            if (!string.IsNullOrEmpty(resultKey))
            {
                return(resultKey);
            }

            resultKey = Guid.NewGuid().ToString();
            CoreSettings.SaveSetting(dbKey, resultKey);

            return(resultKey);
        }
コード例 #4
0
 private void SetUrlSetting(string key, string value)
 {
     if (!CoreBaseSettings.Standalone)
     {
         throw new NotSupportedException("Method for server edition only.");
     }
     value = (value ?? "").Trim();
     if (string.IsNullOrEmpty(value))
     {
         value = null;
     }
     if (GetUrlSetting(key) != value)
     {
         CoreSettings.SaveSetting(GetSettingsKey(key), value);
     }
 }
コード例 #5
0
ファイル: SettingsController.cs プロジェクト: sk81biz/sk81
        public IActionResult SaveSettings([FromBody] SettingsModel model)
        {
            if (!GetTenant(model, out int tenantId, out object error))
            {
                return(BadRequest(error));
            }

            if (string.IsNullOrEmpty(model.Key))
            {
                return(BadRequest(new
                {
                    error = "params",
                    message = "Key is required"
                }));
            }

            if (string.IsNullOrEmpty(model.Value))
            {
                return(BadRequest(new
                {
                    error = "params",
                    message = "Value is empty"
                }));
            }

            Log.DebugFormat("Set {0} value {1} for {2}", model.Key, model.Value, tenantId);

            CoreSettings.SaveSetting(model.Key, model.Value, tenantId);

            var settings = CoreSettings.GetSetting(model.Key, tenantId);

            return(Ok(new
            {
                settings
            }));
        }