public DonationsModel GetDonations( int start = 0, int total = 5 ) { var retVal = new DonationsModel(); try { var client = new RestClient( ConfigurationManager.AppSettings[ "WebApiBaseUrlV1" ] ); var request = new RestRequest( "api/v1/Donations/", Method.GET ); request.AddParameter( "Authorization", AuthorizationInformation, ParameterType.HttpHeader ); request.AddParameter( "offset", start ); request.AddParameter( "limit", total ); var response = client.Execute<JsonReturn>( request ); if ( response != null && response.Data != null ) { JsonReturn jReturn = response.Data; var data = ( RestSharp.JsonArray )jReturn.Result; //Main data. var donations = new List<Donation>(); foreach ( var item in data ) { var result = ( System.Collections.Generic.Dictionary<string, object> )item; var donation = new Donation(); if ( result[ "foodBankName" ] != null ) donation.FoodBankName = result[ "foodBankName" ].ToString(); if ( result[ "foodBankId" ] != null ) donation.FoodBankId = int.Parse( result[ "foodBankId" ].ToString()); if ( result[ "item" ] != null ) donation.Item = result[ "item" ].ToString(); if ( result[ "created" ] != null ) donation.Created = DateTime.Parse( result[ "created" ].ToString() ); if ( result[ "quality" ] != null ) donation.Quality = int.Parse( result[ "quality" ].ToString() ); if ( result[ "id" ] != null ) donation.Id = int.Parse( result[ "id" ].ToString() ); if ( result[ "quantity" ] != null ) donation.Quantity = int.Parse( result[ "quantity" ].ToString()); if ( result[ "volunteerId" ] != null ) donation.VolunteerId = int.Parse( result[ "volunteerId" ].ToString()); if ( result[ "volunteerName" ] != null ) donation.VolunteerName = result[ "volunteerName" ].ToString(); donations.Add( donation ); } retVal.Links = ( List<Link> )jReturn.Links;//Links. //Get header(s). foreach ( var header in response.Headers ) { if ( header.Name != "X-Total-Count" ) continue; retVal.TotalDonations = int.Parse( header.Value.ToString() ); break; } retVal.Donations = donations; } } catch ( Exception ex ) { retVal = new DonationsModel(); } return retVal; }
public DonationsModel GetDonation( int id ) { var retVal = new DonationsModel(); try { var client = new RestClient( ConfigurationManager.AppSettings[ "WebApiBaseUrlV1" ] ); var request = new RestRequest( "api/v1/Donations/" + id, Method.GET ); request.AddParameter( "Authorization", AuthorizationInformation, ParameterType.HttpHeader ); var response = client.Execute<JsonReturn>( request ); if ( response != null && response.Data != null ) { JsonReturn jReturn = response.Data; var result = ( System.Collections.Generic.Dictionary<string, object> )jReturn.Result; retVal.Donation = new Donation(); if ( result[ "foodBankName" ] != null ) retVal.Donation.FoodBankName = result[ "foodBankName" ].ToString(); if ( result[ "foodBankId" ] != null ) retVal.Donation.FoodBankId = int.Parse( result[ "foodBankId" ].ToString() ); if ( result[ "item" ] != null ) retVal.Donation.Item = result[ "item" ].ToString(); if ( result[ "created" ] != null ) retVal.Donation.Created = DateTime.Parse( result[ "created" ].ToString() ); if ( result[ "quality" ] != null ) retVal.Donation.Quality = int.Parse( result[ "quality" ].ToString() ); if ( result[ "id" ] != null ) retVal.Donation.Id = int.Parse( result[ "id" ].ToString() ); if ( result[ "quantity" ] != null ) retVal.Donation.Quantity = int.Parse( result[ "quantity" ].ToString() ); if ( result[ "volunteerId" ] != null ) retVal.Donation.VolunteerId = int.Parse( result[ "volunteerId" ].ToString() ); if ( result[ "volunteerName" ] != null ) retVal.Donation.VolunteerName = result[ "volunteerName" ].ToString(); } } catch ( Exception ex ) { retVal = new DonationsModel(); } return retVal; }