示例#1
0
        public override TSettingDescriptor GetSettingDescriptor(TSetting Setting)
        {
            var Desc = Config.TDesignatorLookupTable.TABLE.GetDescription(ID);

            Setting.Options = _Options.ToArray();

            return(new Config.TMultiSettingDescriptor(Desc.Name, Desc.Description, Setting));
        }
示例#2
0
 /// <summary>
 /// Create settings
 /// </summary>
 /// <param name="entity">TSetting</param>
 public void Create(TSetting entity)
 {
     using (IScope scope = _scopeProvider.CreateScope())
     {
         var database = scope.Database;
         database.Insert(entity);
         scope.Complete();
     }
 }
示例#3
0
        public HttpResponseMessage CreateSettings(TSetting setting)
        {
            if (ModelState.IsValid)
            {
                _settingsService.CreateSettings(setting);
                return(Request.CreateResponse(HttpStatusCode.Created, PackageConstants.ApiKeyMessage));
            }

            return(Request.CreateResponse(HttpStatusCode.BadRequest, PackageConstants.ApiKeyError));
        }
        public HttpResponseMessage PostTSetting(TSetting setting)
        {
            if (ModelState.IsValid)
            {
                _settingsService.CreateSettings(setting);
                return(Request.CreateResponse(HttpStatusCode.Created, new TNotification("Created", PackageConstants.ApiKeyMessage, EventMessageType.Success)));
            }

            return(Request.CreateResponse(HttpStatusCode.BadRequest,
                                          new TNotification("Ooops", PackageConstants.ApiKeyError, EventMessageType.Error)));
        }
示例#5
0
        /// <summary>
        /// 获取或创建设置信息
        /// </summary>
        /// <typeparam name="TSetting">设置类型</typeparam>
        /// <returns>设置实例,数据库中不存在相应节点时返回默认值</returns>
        public TSetting GetSetting <TSetting>() where TSetting : ISetting, new()
        {
            TSetting setting = new TSetting();
            Type     type    = typeof(TSetting);

            foreach (PropertyInfo property in type.GetProperties(BindingFlags.Public | BindingFlags.Instance).Where(m => m.PropertyType == typeof(IKeyValue)))
            {
                string    key      = ((KeyValue)property.GetValue(setting)).Key;
                IKeyValue keyValue = GetKeyValue(key);
                if (keyValue != null)
                {
                    property.SetValue(setting, keyValue);
                }
            }
            return(setting);
        }
        public void Initialize()
        {
            SetFileSystemProvider();

            settings = _settingsService.GetSettings();

            ServerVariablesParser.Parsing    += Parsing;
            TreeControllerBase.MenuRendering += MenuRenderingHandler;

            MediaService.Saved    += MediaService_Saved;
            MediaService.Saving   += MediaService_Saving;
            ContentService.Saving += ContentService_Saving;

            MediaService.Deleted           += MediaService_Deleted;
            MediaService.EmptiedRecycleBin += MediaService_EmptiedRecycleBin;
        }
示例#7
0
        public TSetting Get <TSetting>() where TSetting : ISetting, new()
        {
            if (!_settingCache.TryGetValue(typeof(TSetting), out var setting))
            {
                setting = new TSetting();
                _settingCache.Add(typeof(TSetting), setting);

                var element = _docRoot.Element(setting.UniqueElementName);
                if (element != null)
                {
                    setting.Deserialize(element);
                }
                else
                {
                    setting.IsDefault = true;
                }
            }
            return((TSetting)setting);
        }
示例#8
0
 public RFDLib.Config.ISetting GenerateSetting(TSettingID Id, TSetting Setting)
 {
     return(_Map[Id].GetSettingDescriptor(Setting).CreateNewSetting());
 }
示例#9
0
 public void CreateSettings(TSetting setting)
 {
     _settingsRepository.Create(setting);
 }