Он отлично работает в консольном приложении.
Но когда я пытаюсь сделать это в своем веб-приложении, при асинхронном вызове (т. е. query.ExecuteNextAsync()) процесс завершается и даже не дает любое исключение.
Код: Выделить всё
public List allStudents()
{
int class = 10;
string section = "A";
string documentType = "Student";
List students = new List();
string DocumentDBCollectionLink = "CollectionLink";
DocumentClient dc = new DocumentClient(new Uri("https://xyz.documents.azure.com:443/"), "authenticationKey==");
IDocumentQuery query;
String continuation = "";
do
{
FeedOptions feedOptions = new FeedOptions { MaxItemCount = 10, RequestContinuation = continuation };
query = dc.CreateDocumentQuery(DocumentDBCollectionLink, feedOptions).Where(d => d.Type.Equals(documentType) && d.Class.Equals(class) && d.Section.Equals(section)).AsDocumentQuery();
FeedResponse pagedResults = this.getRecords(query).Result;
foreach (Student system in pagedResults)
{
students.Add(system);
}
continuation = pagedResults.ResponseContinuation;
} while (!String.IsNullOrEmpty(continuation));
return students;
}
private async Task getRecords(IDocumentQuery query)
{
FeedResponse pagedResults = await query.ExecuteNextAsync();
return pagedResults;
}
Что-то не так с этим?
Или есть ли лучший способ получить результат?
Будем очень благодарны за любую помощь.< /p>
Заранее спасибо.
Подробнее здесь: https://stackoverflow.com/questions/289 ... pplication