/// <summary> /// Инициализирует модель для редактирования отзыва на основе существующего. /// По умолчанию загружает в модель список категорий из базы. /// </summary> /// <param name="id">id существующего отзыва</param> /// <param name="loadCategories">Если true - загружает в модель спискок существующих категорий</param> /// <returns></returns> public async Task Initialize(Guid id, bool loadCategories = true) { if (_repository == null || _categoryCreator == null) { return; } if (loadCategories) { Categories = await _categoryCreator.GetCategories("Не выбрана"); } if (id == Guid.Empty) { return; } var feedback = await _repository.Get(id); if (feedback != null) { EditMode = true; Id = feedback.Id; Text = feedback.Text; CategoryId = feedback.CategoryId; } }
/// <summary> /// Инициализирует модель представления данными, полученными из БД с использованием указанных фильтров /// </summary> /// <param name="author">Фильтр по автору</param> /// <param name="category">Фильтр по категории</param> /// <param name="orderBy">Порядок сортировки</param> /// <param name="page">Страница вывода</param> /// <returns></returns> public async Task Initialize(string author, string category, FeedbackOrderBy orderBy, int page) { Feedbacks = await GetFeedbackPagedList(author, category, orderBy, page); CategoryList = await _categoryCreator.GetCategories("Все категории"); Author = author; Category = category; OrderBy = orderBy; Page = page; }