public async Task <IActionResult> CutLink(string originalLink) { //фабрика сокращённых ссылок var manager = new LinkManager(); //Новая ссылка var link = manager.Cut(originalLink); // if (link == null) //Проверка на соответствие ссылки формату { ViewBag.Message = "Ошибка: Введённая строка не соответствует формату URL"; return(View("Index")); } if (!User.Identity.IsAuthenticated) //Если пользователь не аутентифицирован { link.User = await db.Users.FirstOrDefaultAsync(); //Используется анонимный пользователь } else { link.User = await db.Users.Where(u => u.Email == User.Identity.Name).FirstOrDefaultAsync(); //Иначе ссылка связывается с пользователем } await db.Links.AddAsync(link); await db.SaveChangesAsync(); return(View(link)); }