Пример #1
0
        /// <summary>
        /// обработчик кнопки "Далее"
        /// </summary>
        /// <param name="startItem"></param>
        /// <returns>Переадрисовывает на стрвницу где необходимо ввести остальные данные</returns>
        public IActionResult OnPostFurther(DtoStartItem startItem)
        {
            if (SessionHasExpired)
            {
                return(Redirect("/"));
            }

            _startItems.UpdateStartItem(startItem);
            _rowsCash.HandleUpdateRow(startItem.Authors.Skip(1).ToList());
            return(RedirectToPage("addsubitem", new { area = "workspace", itemType = DtoStartItem.ItemType }));
        }
        /// <summary>
        /// Обновление кеша
        /// </summary>
        public void UpdateStartItem(DtoStartItem dtoStartItem)
        {
            _cache.Remove(KeyId);

            _cache.Set(KeyId, dtoStartItem, new MemoryCacheEntryOptions
            {
                AbsoluteExpirationRelativeToNow = TimeSpan.FromMilliseconds
                                                  (
                    value: _userSession.User.Expirate - DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()
                                                  )
            });
        }