protected void btnCreateUpdate_Click(object sender, EventArgs e) { if (!HasWriteAccess) return; if (!ValidatePlanInfo()) return; UserLevelRestrictions restrictions = (UserLevelRestrictions)Reflection.SaveTableSettings(phLevelRestrictions, typeof(UserLevelRestrictions)); if (hidCurrentLevelID.Value == "") { //create new level UserLevel level = new UserLevel(txtName.Text, Convert.ToInt32(txtMinScore.Text)); level.Restrictions = restrictions; level.Save(); } else { //update current one UserLevel level = UserLevel.Load(Convert.ToInt32(hidCurrentLevelID.Value)); level.Name = txtName.Text; level.MinScore = Convert.ToInt32(txtMinScore.Text); level.Restrictions = restrictions; level.Save(); } hidCurrentLevelID.Value = ""; pnlUserLevelInfo.Visible = false; PopulateDataGrid(); }
public static UserLevel[] LoadAll() { string cacheKey = String.Format("UserLevel_LoadAll"); if (HttpContext.Current != null && HttpContext.Current.Cache[cacheKey] != null) { return HttpContext.Current.Cache[cacheKey] as UserLevel[]; } List<UserLevel> lLevels = new List<UserLevel>(); using (SqlConnection conn = Config.DB.Open()) { SqlDataReader reader = SqlHelper.ExecuteReader(conn, "FetchUserLevels", null); while (reader.Read()) { UserLevel level = new UserLevel(); level.id = (int) reader["Id"]; level.name = (string) reader["Name"]; level.minScore = (int) reader["MinScore"]; level.restrictions = reader["Restrictions"] as string != null ? Misc.FromXml<UserLevelRestrictions>((string) reader["Restrictions"]) : new UserLevelRestrictions(); lLevels.Add(level); } } if (HttpContext.Current != null) { HttpContext.Current.Cache.Insert(cacheKey, lLevels.ToArray(), null, DateTime.Now.AddHours(1), Cache.NoSlidingExpiration, CacheItemPriority.NotRemovable, null); } return lLevels.ToArray(); }