public ActionResult SysConfigEdit(SysConfigModel model) { var result = new JsonModel(); var opType = OperationType.Update; SysConfig config = null; if (model.Id == 0) { config = new SysConfig(); opType = OperationType.Insert; } else { config = SysConfigRepository.Get(model.Id); if (config == null) { result.msg = "记录不存在!"; return(Json(result)); } } Mapper.Map(model, config); switch (config.ConfigType) { case SysConfigType.String: config.ConValue = JsonConvert.SerializeObject(model.StringValue); break; case SysConfigType.Bool: config.ConValue = JsonConvert.SerializeObject(model.BoolValue); break; case SysConfigType.TextArea: config.ConValue = JsonConvert.SerializeObject(model.TextAreaValue); break; case SysConfigType.Int: config.ConValue = JsonConvert.SerializeObject(model.IntValue); break; case SysConfigType.Long: config.ConValue = JsonConvert.SerializeObject(model.LongValue); break; case SysConfigType.StringArray: config.ConValue = JsonConvert.SerializeObject(model.StringArrayValue.Split(',')); break; default: break; } SysConfigRepository.Save(config); LogRepository.Insert(TableSource.SysConfig, opType, config.Id); result.code = JsonModelCode.Succ; result.msg = "保存成功!"; return(Json(result)); }
public ActionResult SysConfigEdit(long id, string reUrl) { ViewBag.ReUrl = reUrl ?? Url.Action("SysConfigList"); var model = new SysConfigModel(); if (id == 0) { return(View(model)); } var config = SysConfigRepository.Get(id); if (config == null) { ShowErrorMsg(); return(Redirect(ViewBag.ReUrl)); } Mapper.Map(config, model); switch (model.ConfigType) { case SysConfigType.String: model.StringValue = JsonConvert.DeserializeObject <string>(model.ConValue); break; case SysConfigType.Bool: model.BoolValue = JsonConvert.DeserializeObject <bool>(model.ConValue); break; case SysConfigType.TextArea: model.TextAreaValue = JsonConvert.DeserializeObject <string>(model.ConValue); break; case SysConfigType.Int: model.IntValue = JsonConvert.DeserializeObject <int>(model.ConValue); break; case SysConfigType.Long: model.LongValue = JsonConvert.DeserializeObject <long>(model.ConValue); break; case SysConfigType.StringArray: model.StringArrayValue = string.Join(",", JsonConvert.DeserializeObject <string[]>(model.ConValue)); break; default: break; } return(View(model)); }
/// <summary> /// 解析配置 /// </summary> /// <typeparam name="TConfigSection">配置项类型</typeparam> /// <param name="CreateCacheFun">如果缓存不存在则通过此委托创建</param> /// <returns></returns> public static TConfigSection Get <TConfigSection>(bool cached = true, string PropNameSurfix = "") { return(SysConfigRepository.Get <TConfigSection>(cached, PropNameSurfix)); }