Asp net core MVC загрузка файла на сервер

Рейтинг: 0Ответов: 0Опубликовано: 14.08.2023

Хочу загрузить фотографию на сервер. Проблема в том, что когда в диалоговом окне выбираю фото и нажимаю Отправить, то метод ChangeImage в контроллере не отрабатывает.

 <div class="container-to-photo">
        <img src="~/images/blank-profile-picture.jpg" class="main-image">
        <form method="post" asp-controller="Account" asp-action="ChangeImage" enctype="multipart/form-data">     
            <input type="file" id="fileInput" name="imageFile" accept=".jpg" style="display: none;">
            <button class="upload" id="uploadButton" type="submit">Загрузить фото</button>
        </form>
    </div>
<script>
    document.getElementById("uploadButton").addEventListener("click", function () {
        document.getElementById("fileInput").click();
    });
</script>

Код в контроллере:

public IActionResult ChangeImage(IFormFile imageFile)
    {
        if (imageFile != null && imageFile.Length > 0)
        {
            string email = User.Email;
            string uploadsFolder = Path.Combine("wwwroot", "UsersFiles", email.ToString());

            string uniqueFileName = Path.Combine(uploadsFolder, "blank-profile-picture2.jpg");

            using (var fileStream = new FileStream(uniqueFileName, FileMode.Create))
            {
                imageFile.CopyTo(fileStream);
            }
        }

        return RedirectToAction("UserPage");
    }

Ответы

Ответов пока нет.