невозможно получить ответ при использовании определенного класса
[Function("SearchFailedEntries")]
public async Task SearchFailedEntries([HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = "entries/search")] HttpRequestData req)
{
try
{
string requestBody = await new StreamReader(req.Body).ReadToEndAsync();
var requestData = JsonConvert.DeserializeObject(requestBody);
if (requestData.IdList.Count < 1)
{
return new BadRequestObjectResult(new { message = "Invalid ids" });
}
return await _ApiService.GetMissingDocumentsByIds(requestData.IdList);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
throw;
}
}
Вышеуказанная функция не может вернуть ответ при использовании класса CmsEntryToDbSchema в классе SearchEntriesResponse
public class SearchEntriesResponse
{
public List FoundEntries { get; set; }
public List NotFoundEntries { get; set; }
}
public class CmsEntryToDbSchema
{
public string id { get; set; }
public CmsModel entry { get; set; }
public int retriveCount { get; set; }
public string status { get; set; }
}
ожидание okObjectResult от функции при использовании CmsEntryToDbSchema
public async Task GetMissingDocumentsByIds(List ids)
{
try
{
var missingIds = new List();
//var foundEntriesId = await _cmsEntriesCollection.SearchDocumentById(ids);
var foundEntries = await _cmsEntriesCollection.GetMultipleEntriesById(ids);
foreach (var id in ids) {
if (foundEntries.Any(x => x.id != id))
{
missingIds.Add(id);
}
}
//var missingIds = ids.Except(foundEntries).ToList();
return new OkObjectResult(new SearchEntriesResponse() { FoundEntries = foundEntries, NotFoundEntries = missingIds });
}
catch (Exception ex) {
Console.WriteLine(ex.Message);
throw;
}
Ниже было указано GetMultipleEntriesById
public async Task GetMultipleEntriesById(List ids)
{
var filter = Builders.Filter.In("_id", ids);
return await _collection.Find(filter).ToListAsync();
}
Подробнее здесь: https://stackoverflow.com/questions/789 ... ular-class