public static async Task Run() { // Create an http client provider: string tokenUriString = "http://*****:*****@example.com", "JohnsPassword"); _accessToken = _tokenDictionary["access_token"]; // Write the contents of the dictionary: foreach (var kvp in _tokenDictionary) { Console.WriteLine("{0}: {1}", kvp.Key, kvp.Value); Console.WriteLine(""); } // Create a company client instance: var baseUri = new Uri(hostUriString); var companyClient = new CompanyClient(baseUri, _accessToken); // Read initial companies: Console.WriteLine("Read all the companies..."); var companies = await companyClient.GetCompaniesAsync(); WriteCompaniesList(companies); int nextId = (from c in companies select c.Id).Max() + 1; Console.WriteLine("Add a new company..."); var result = await companyClient.AddCompanyAsync( new Company { Name = string.Format("New Company #{0}", nextId) }); WriteStatusCodeResult(result); Console.WriteLine("Updated List after Add:"); companies = await companyClient.GetCompaniesAsync(); WriteCompaniesList(companies); Console.WriteLine("Update a company..."); var updateMe = await companyClient.GetCompanyAsync(nextId); updateMe.Name = string.Format("Updated company #{0}", updateMe.Id); result = await companyClient.UpdateCompanyAsync(updateMe); WriteStatusCodeResult(result); Console.WriteLine("Updated List after Update:"); companies = await companyClient.GetCompaniesAsync(); WriteCompaniesList(companies); Console.WriteLine("Delete a company..."); result = await companyClient.DeleteCompanyAsync(nextId - 1); WriteStatusCodeResult(result); Console.WriteLine("Updated List after Delete:"); companies = await companyClient.GetCompaniesAsync(); WriteCompaniesList(companies); } catch (AggregateException ex) { // If it's an aggregate exception, an async error occurred: Console.WriteLine(ex.InnerExceptions[0].Message); Console.WriteLine("Press the Enter key to Exit..."); Console.ReadLine(); return; } catch (Exception ex) { // Something else happened: Console.WriteLine(ex.Message); Console.WriteLine("Press the Enter key to Exit..."); Console.ReadLine(); return; } }