public override ProfileInfoCollection GetAllProfiles(
ProfileAuthenticationOption authenticationOption, int pageIndex, int pageSize, out int totalRecords)
{
Condition.Requires(pageIndex, "pageIndex").IsGreaterOrEqual(0);
Condition.Requires(pageSize, "pageSize").IsGreaterOrEqual(1);
if (authenticationOption != ProfileAuthenticationOption.All)
{
throw new NotSupportedException("only ProfileAuthenticationOption.All is supported");
}
var startRow = GetPagingStartRow(pageIndex, pageSize);
using (var db = this.ConnectToDatabase())
{
var rows = db.Query(this.sqlQueryBuilder.GetAllUsers, startRow, pageSize).ToList();
return ExtractProfileInfoFromRows(rows, out totalRecords);
}
}