Вложенный список очищается при втором обращении к контекстному классу

Collections.sort может получить экземпляр Comparator в качестве второго аргумента. В Comparator вы можете поместить любой код для сравнения двух элементов списка.

Например, сортировка spzn производится с помощью year и getBcItem:

    Collections.sort(spzn, new Comparator() {
        @Override
        public int compare(CcaesItem  o1, CcaesItem  o2) {
            if (o1.getYear() > o2.getYear()) {
                return 1;
            } else if (o1.getYear() < o2.getYear()) {
                return -1;
            } else {
                if (o1.getBcItem() > o2.getBcItem()) {
                    return 1;
                } else if (o1.getBcItem() < o2.getBcItem()) {
                    return -1;
                }
            }

            return 0;
        }
    });

Также не забывайте о нулевых проверках в Comparator, потому что список может содержать нулевые значения

-1
задан Patryk Janik 19 January 2019 в 18:41
поделиться

2 ответа

В вашем запросе GET ваш запрос возвращает только библиотеки. Попробуйте загрузить Книги так, чтобы они были включены в запрос и включены в результаты:

// GET: api/Libraries 
[HttpGet] 
public async Task<ActionResult<IEnumerable<Library>>> GetTodoItems() 
{ 
    return await _context.Libraries.Include(l => l.Books).ToListAsync(); 
}
0
ответ дан devNull 19 January 2019 в 18:41
поделиться

изменить return await _context.Libraries.ToListAsync(); на

 return await _context.Libraries.Include(x => x.Books).ToListAsync();
0
ответ дан Derviş Kayımbaşıoğlu 19 January 2019 в 18:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: