GetUserById - Works similar to Assignment 3 AllProducts(needs to get sipecified user id)

PHOTO EMBED

Thu Jun 27 2024 18:47:12 GMT+0000 (Coordinated Universal Time)

Saved by @iamkatmakhafola

[HttpGet]
[Route("getUserById/{id}")]
public async Task<IActionResult> GetUserById(int id)
{
    try
    {
        IQueryable<User> query =  _appDbContext.Users.Include(u => u.User_Status).Include(u => u.User_Type);

        var results = await query.ToArrayAsync();

        dynamic users = results.Select(u => new
        {
            u.Id,
            u.Name,
            u.Surname,
            u.Email,
            u.Physical_Address,
            u.PhoneNumber,
            u.Date_of_Birth,
            UserStatus = u.User_Status.User_Status_Description,
            UserType = u.User_Type.User_Type_Name,
            u.Photo,
            u.ID_Number
        });

        return Ok(users);
    }
    catch (Exception ex)
    {
        // Log the exception for debugging
        Console.WriteLine(ex.Message);
        return BadRequest("An error occurred while fetching user details.");
    }
}
content_copyCOPY