Возвращать постраничные результаты из WebMethod? - PullRequest
0 голосов
/ 08 сентября 2010

Мне нужно создать WebMethod, который будет получать некоторые данные из БД и возвращать их клиенту.

Теперь предположим, что объем данных огромен, поэтому я бы хотел взять и вернуть данные по частям.

Есть ли способ использовать доходность в Webmethod?

Как я знаю, в WebMethods нет способа вернуть универсальные типы, но я также не мог использовать неуниверсальный IEnumerable.

Как мне это сделать?

1 Ответ

2 голосов
/ 08 сентября 2010

Нет, вы не можете получить доход от WebMethod. Но вы можете добавить два параметра к вызову метода, чтобы разрешить постраничные результаты:

public string[] GetResults(string someQuery)
{
    var results = new List<string>();

    // Fill Results

    return results.ToArray();
}

становится:

public string[] GetResults(string someQuery, int pageNum, int pageSize)
{
    var results = new List<string>();

    // Fill Results

    return results.Skip(pageNum * pageSize).Take(pageSize).ToArray();
}
...