コード例 #1
0
        /// <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;
            }
        }
コード例 #2
0
        /// <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;
        }