[HttpGet] [Route("getUserById/{id}")] public async Task<IActionResult> GetUserById(int id) { try { var user = await _userManager.FindByIdAsync(id.ToString()); if (user == null) { return NotFound("User not found."); } var userViewModel = new UserViewModel { Name = user.Name, Surname = user.Surname, Email = user.Email, Physical_Address = user.Physical_Address, PhoneNumber = user.PhoneNumber, Date_of_Birth = user.Date_of_Birth, User_Status_ID = user.User_Status_ID, User_Type_ID = user.User_Type_ID, Id_Number = user.ID_Number }; // Fetch the base64 string photo from user.Photo string base64Photo = user.Photo; // Convert base64 string to byte array byte[] photoBytes = Convert.FromBase64String(base64Photo); // Convert byte array to IFormFile-like object var memoryStream = new MemoryStream(photoBytes); userViewModel.Photo = new FormFile(memoryStream, 0, photoBytes.Length, "Photo", "photo.jpg") { Headers = new HeaderDictionary(), ContentType = "image/jpeg" // Set the content type as appropriate }; return Ok(userViewModel); } catch (Exception ex) { // Log the exception for debugging Console.WriteLine(ex.Message); return BadRequest("An error occurred while fetching user details."); } }