public PersonalizationData GetUserSettings(PersonalizationSearchCriteria searchCriteria)
        {
            var userSettingsToReturn = new PersonalizationData();

            SqlConnection cn;

            SPSecurity.RunWithElevatedPrivileges(delegate
            {
                using (cn = new SqlConnection(EPMLiveCore.CoreFunctions.getConnectionString(_web.Site.WebApplication.Id)))
                {
                    cn.Open();

                    var cmd = new SqlCommand("SELECT * FROM PERSONALIZATIONS WHERE FK=@FK and UserId=@userid and [Key]=@key and SiteId=@siteid and WebId=@webid", cn);
                    cmd.Parameters.AddWithValue("@FK", searchCriteria.WebPartId.ToString());
                    cmd.Parameters.AddWithValue("@siteid", searchCriteria.SiteId.ToString());
                    cmd.Parameters.AddWithValue("@webid", searchCriteria.WebId.ToString());
                    cmd.Parameters.AddWithValue("@userid", searchCriteria.UserId);
                    cmd.Parameters.AddWithValue("@key", _personalizationKey);
                    var reader = cmd.ExecuteReader();

                    userSettingsToReturn.Hydrate(reader);

                    cn.Close();
                }
            });

            return(userSettingsToReturn);
        }