public static Business.UserActivityList <Business.UserActivity> Load(Business.UserActivityParameters paras) { StringBuilder key = new StringBuilder("UserActivity" + paras.Udc.UserID.ToString()); if (paras.WithAdminData) { key.Append("WAD"); } if (paras.Amount > 0 && paras.Amount <= Business.DataAccessConfiguration.UserActivityMaximalAmount()) { key.Append(paras.Amount.ToString()); } else { key.Append(Business.DataAccessConfiguration.UserActivityMaximalAmount().ToString()); } QuickCacheHandler cacheHandler = new QuickCacheHandler(key.ToString()); cacheHandler.AlternateCacheMinutes = 2; cacheHandler.ItemPriority = System.Web.Caching.CacheItemPriority.Default; Business.UserActivityList <Business.UserActivity> list = cacheHandler.Get() as Business.UserActivityList <Business.UserActivity>; if (list != null) { return(list); } list = new Business.UserActivityList <Business.UserActivity>(paras); SqlConnection Conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["CSBoosterConnectionString"].ConnectionString); SqlDataReader sqlReader = null; try { SqlCommand GetData = new SqlCommand(); GetData.Connection = Conn; GetData.CommandType = CommandType.StoredProcedure; //if (paras.ObjectType == ObjectType.Community) //{ // GetData.CommandText = "hisp_UserActivity_Community_Load"; // GetData.Parameters.AddWithValue("@USR_ID", paras.Udc.UserId.ToGuid()); // GetData.Parameters.AddWithValue("@CTY_ID", paras.ObjectID); //} //else //{ GetData.CommandText = "hisp_UserActivity_User_Load"; GetData.Parameters.AddWithValue("@USR_ID", paras.Udc.UserID); //} if (paras.WithAdminData) { GetData.Parameters.AddWithValue("@WithAdminData", 1); } if (paras.UserActivityType != null) { GetData.Parameters.AddWithValue("@USA_Type", (int)paras.UserActivityType.Value); } if (paras.Amount > 0 && paras.Amount <= Business.DataAccessConfiguration.UserActivityMaximalAmount()) { GetData.Parameters.AddWithValue("@Amount", paras.Amount); } else { GetData.Parameters.AddWithValue("@Amount", Business.DataAccessConfiguration.UserActivityMaximalAmount()); } Conn.Open(); sqlReader = GetData.ExecuteReader(CommandBehavior.CloseConnection); while (sqlReader.Read()) { Business.UserActivity item = new Business.UserActivity(sqlReader["USA_ID"].ToString().ToGuid(), (UserActivityWhat)sqlReader["USA_What"].ToString().ToInt32(0)); item.UserID = sqlReader["USR_ID"].ToString().ToGuid(); item.UserNickname = sqlReader["USR_Nickname"].ToString(); item.Date = Convert.ToDateTime(sqlReader["USA_Date"]); if (sqlReader["USA_Target_OBJ_ID"] != DBNull.Value) { item.TargetObjectID = sqlReader["USA_Target_OBJ_ID"].ToString().ToGuid(); } if (sqlReader["USA_Target_OBJ_Type"] != DBNull.Value) { item.TargetObjectType = Convert.ToInt32(sqlReader["USA_Target_OBJ_Type"]); } item.TargetObjectText = sqlReader["USA_Target_OBJ_Text"].ToString(); if (sqlReader["USA_Detail_OBJ_ID"] != DBNull.Value) { item.DetailObjectID = sqlReader["USA_Detail_OBJ_ID"].ToString().ToGuid(); } if (sqlReader["USA_Detail_OBJ_Type"] != DBNull.Value) { item.DetailObjectType = Convert.ToInt32(sqlReader["USA_Detail_OBJ_Type"]); } if (item.ActivityWhat == UserActivityWhat.DoNowThis && sqlReader["USA_Text"] != DBNull.Value) { item.DetailObjectText = sqlReader["USA_Text"].ToString(); } else { item.DetailObjectText = sqlReader["USA_Detail_OBJ_Text"].ToString(); } item.OnlyVisibleForAdmin = Convert.ToBoolean(sqlReader["USA_OnlyVisibleForAdmin"]); list.Add(item); } } finally { if (sqlReader != null) { sqlReader.Close(); } sqlReader = null; } paras.ItemTotal = list.Count; cacheHandler.Insert(list); return(list); }
public UserActivityList(Business.UserActivityParameters paras) : base(paras.InitialCapacity) { amount = paras.Amount; }