データベースからデータを取得してクライアントに返す WebMethod を作成する必要があります。
ここで、データ量が膨大になると仮定して、データを部分的に取得して返したいと思います。
Webmethod で yield return を使用する方法はありますか?
私が知っているように、WebMethods でジェネリック型を返す方法はありませんが、非ジェネリックの IEnumerable も使用できませんでした。
どうすればそれを達成できますか?
データベースからデータを取得してクライアントに返す WebMethod を作成する必要があります。
ここで、データ量が膨大になると仮定して、データを部分的に取得して返したいと思います。
Webmethod で yield return を使用する方法はありますか?
私が知っているように、WebMethods でジェネリック型を返す方法はありませんが、非ジェネリックの IEnumerable も使用できませんでした。
どうすればそれを達成できますか?
いいえ、WebMethodからリターンを得ることができません。ただし、メソッド呼び出しに2つのパラメーターを追加して、ページングされた結果を許可することができます。
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();
}