Как упомянуто выше, у меня есть модельный класс с именем пользователя и его пользователя . В этом классе модели я сделал некоторые реквизиты (например, имя пользователя, пароль, профилепиктурурл, электронная почта) и т. Д. Я хочу, чтобы пользователь загрузил изображение, которое, в свою очередь, будет добавлено к ProfilePictureUrl в запрос обратно на сервер.
Код: Выделить всё
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Identity;
namespace API.Entities
{
public class User : IdentityUser
{
public IFormFile profilePhotoURL {get; set; }
public string Name { get; set; }
}
}
< /code>
Имя пользователя, электронная почта и номера телефонов получаются из класса IdentityUser из .net. < /p>
RegisterDto < /p>
using Microsoft.AspNetCore.Http;
namespace API.DTOs
{
public class RegisterDTO : LoginDTO
{
public string Email { get; set; }
public string Name { get; set; }
public FormFile profilePhotoURL { get; set; }
public string PhoneNumber { get; set; }
}
}
Код: Выделить всё
[HttpPost("register"), DisableRequestSizeLimit]
public async Task RegisterUser(RegisterDTO registerDTO)
{
//getting the file from request
var postedProfile = Request.Form.Files[0];
// setting the Uploads folder
var Uploads = Path.Combine(Directory.GetCurrentDirectory(), "Uploads");
if (postedProfile.Length > 0)
{
var fileName = ContentDispositionHeaderValue.Parse(postedProfile.ContentDisposition).FileName.Trim();
var pathToSave = Path.Combine(Uploads, fileName.ToString());
using (var fileStream = new FileStream(pathToSave, FileMode.Create))
{
await postedProfile.CopyToAsync(fileStream);
}
Ok($"File Uploaded successfully");
}
else
{
return BadRequest(new ProblemDetails
{
Title = "400 - Bad Request",
Status = 400,
Detail = "File not uploaded"
});
}
var registeredUser = new User
{
UserName = registerDTO.userName,
Email = registerDTO.Email,
Name = registerDTO.Name,
profilePhotoURL = postedProfile,
PhoneNumber = registerDTO.PhoneNumber
};
var result = await _userManager.CreateAsync(registeredUser, registerDTO.Password);
if (!result.Succeeded)
{
foreach (var Error in result.Errors)
{
ModelState.AddModelError(Error.Code, Error.Description);
}
return ValidationProblem();
}
await _userManager.AddToRoleAsync(registeredUser, "Member");
return StatusCode(201);
}
значение JSON не может быть преобразовано в Microsoft.ASPLecore.ht.formf. Путь: $ .profilephotourl | Линевое белье: 5 | BytePositionInline: 36.
Приведенная выше ошибка находится в модели state ошибок. объект?
Все предложения приветствуются

Подробнее здесь: https://stackoverflow.com/questions/735 ... ient-in-as