Membership.GetAllUsers()
делает то, что предполагает его название, означающее, что ваша подкачка не будет очень эффективной.Если вы хотите реализовать эффективную подкачку страниц, в идеале на уровне базы данных, вам следует использовать после перегрузки , которая позволяет передавать индекс текущей страницы и нужный размер страницы:
internal IEnumerable<MembershipUser> GetUsers(
int pageIndex,
int pageSize,
out int totalRecords
)
{
return Membership
.GetAllUsers(pageIndex, pageSize, out totalRecords)
.Cast<MembershipUser>();
}
Метод возвращает общее количество записей, чтобы впоследствии можно было правильно реализовать разбиение на страницы на уровне пользовательского интерфейса.