public static UserProfileViewModel GetProfileById(int id)
        {
            if (Instance._profiles.ContainsKey(id))
            {
                KeyValuePair <int, UserProfileViewModel> userProfileCached = Instance._profiles.SingleOrDefault(x => x.Key == id);

                if (userProfileCached.Value != null)
                {
                    return(userProfileCached.Value);
                }
            }

            RepositoryUserProfiles repo = new RepositoryUserProfiles();

            UserProfileViewModel userProfile = repo.GetModelById(id);

            if (userProfile != null)
            {
                if (!Instance._profiles.TryAdd(id, userProfile))
                {
                    Instance._log.Trace("Failed to add user profile!");
                }
            }

            return(userProfile);
        }
        public static UserProfileViewModel GetProfile(int userId)
        {
            if (_usingCache)
            {
                return(UserProfileSingleton.GetProfileById(userId));
            }

            RepositoryUserProfiles repo = new RepositoryUserProfiles();

            return(repo.GetModelById(userId));
        }