public Company Update(Company company)
 {
     using (var client = new HttpClient())
     {
         HttpResponseMessage response =
             client.PutAsJsonAsync("http://localhost:17348/api/company/" + company.Id, company).Result;
         return response.Content.ReadAsAsync<Company>().Result;
     }
 }
        public void Delete(Company company)
        {
            using (var client = new HttpClient())
            {
                HttpResponseMessage response =
                    client.DeleteAsync("http://localhost:17348/api/company/" + company.Id).Result;

            }
        }
        public Company AddBadge(Company company, int badgeId)
        {
            bool already = false;
            for (int i = 0; i < company.Badges.Count(); ++i)
            {
                if (company.Badges.ElementAt(i).Id == badgeId)
                {
                    already = true;
                }
            }

            if (!already)
            {
                Badge badge = facade.GetBadgeGateway().Find(badgeId);
                List<Badge> badges = company.Badges.ToList();

                badges.Add(badge);

                company.Badges = badges;
            }

            return company;
        }
        public Company RemoveBadge(Company company, int badgeId)
        {
            bool contains = false;
            for(int i = 0; i < company.Badges.Count(); ++i)
            {
                if(company.Badges.ElementAt(i).Id == badgeId)
                {
                    contains = true;
                }
            }
            if (contains)
            {
                //Badge badge = facade.GetBadgeGateway().Find(badgeId);
                List<Badge> badges = company.Badges.ToList();

                badges.Remove(badges.FirstOrDefault(x => x.Id == badgeId));
                company.Badges = badges;
            }

            return company;
        }