public override ProfileInfoCollection GetAllProfiles(ProfileAuthenticationOption authenticationOption, int pageIndex, int pageSize, out int totalRecords) { ProfileInfoCollection pc = new ProfileInfoCollection(); totalRecords = 0; switch (authenticationOption) { case ProfileAuthenticationOption.All: { PageQueryParams pageQueryParams = new PageQueryParams(); pageQueryParams.PageIndex = pageIndex; pageQueryParams.PageSize = pageSize; List <SystemUserWrapper> users = SystemUserWrapper.FindAllByPage(pageQueryParams); totalRecords = pageQueryParams.RecordCount; foreach (SystemUserWrapper user in users) { pc.Add(new ProfileInfo(user.UserLoginID, false, user.LastActivityDate, user.LastLoginDate, 0)); } return(pc); }; case ProfileAuthenticationOption.Anonymous: { return(pc); }; case ProfileAuthenticationOption.Authenticated: { List <SystemUserWrapper> users = SystemUserWrapper.FindAuthenticatedUserAll(((pageIndex - 1) * pageSize), pageSize, out totalRecords); foreach (SystemUserWrapper user in users) { pc.Add(new ProfileInfo(user.UserLoginID, false, user.LastActivityDate, user.LastLoginDate, 0)); } return(pc); }; default: return(pc); } }