public UserDetails GetUserDetails(string userName)
{
UserDetails details = null;
try
{
var teamDataURI = new Uri(string.Format(BASE_URL_API_V2 + "/user?name={0}", userName));
var xDoc = _apiDownloadService.DownloadApiResult(teamDataURI);
var xElements = xDoc.Descendants("user").ToList();
if (xElements.Count() == 1)
{
var userElement = xElements.First();
int userId;
if (int.TryParse(userElement.Attribute("id").Value, out userId))
{
var avatarLink = userElement.Element("avatarlink").GetStringValue(attribute: "value");
Uri avatarUri;
if (!Uri.TryCreate(avatarLink, UriKind.Absolute, out avatarUri))
{
avatarLink = string.Empty;
}
details = new UserDetails
{
Name = userName,
Avatar = avatarLink,
UserId = userId
};
}
}
}
catch (Exception ex)
{
_rollbar.SendException(ex);
}
return details;
}