public ActionResult AccountSetting() { AccountSetting_ViewModel model = new AccountSetting_ViewModel(); Type t = model.GetType(); var props = t.GetProperties(); var user = UserManager.FindById(User.Identity.GetUserId()); for (int i = 0; i < props.Length; i++) { string settingName = props[i].Name; var settingitem = _offlineDB.Off_System_Setting.SingleOrDefault(m => m.SettingName == settingName && m.Off_System_Id == user.DefaultSystemId); if (settingitem != null) { props[i].SetValue(model, settingitem.SettingValue); } } OfflineSales offdb = new OfflineSales(); List <int> systemlistid = new List <int>(); string[] temp = user.OffSalesSystem.Split(','); foreach (var item in temp) { systemlistid.Add(Convert.ToInt32(item)); } var systemlist = from m in offdb.Off_System where systemlistid.Contains(m.Id) select m; ViewBag.SystemList = systemlist; ViewBag.CurrentSystem = user.DefaultSystemId; return(View(model)); }
public ActionResult AccountSettingAjax(FormCollection form) { if (ModelState.IsValid) { //form.AllKeys; AccountSetting_ViewModel model = new AccountSetting_ViewModel(); if (TryUpdateModel(model)) { Type t = model.GetType(); var s = t.GetProperties(); //var result = ""; var user = UserManager.FindById(User.Identity.GetUserId()); for (int i = 0; i < s.Length; i++) { string settingName = s[i].Name; var settingitem = _offlineDB.Off_System_Setting.SingleOrDefault(m => m.SettingName == settingName && m.Off_System_Id == user.DefaultSystemId); if (settingitem != null) { settingitem.SettingValue = (string)s[i].GetValue(model); _offlineDB.Entry(settingitem).State = System.Data.Entity.EntityState.Modified; } else { var setting = new Off_System_Setting() { Off_System_Id = user.DefaultSystemId, SettingName = settingName, SettingResult = true, SettingValue = (string)s[i].GetValue(model) }; _offlineDB.Off_System_Setting.Add(setting); } } _offlineDB.SaveChanges(); return(Content("SUCCESS")); } return(Content("FAIL")); } else { return(Content("FAIL")); } }