public async Task <IEnumerable <TResult> > PostAsync <TResult, TResponse>(string endpoint, object data, NameValueCollection parameters = null) where TResponse : IXeroResponse <TResult>, new() { var queryString = CreateQueryString(null, null, parameters, true); HttpContent content = new StringContent(XmlMapper.To(data), Encoding.UTF8, MimeTypes.ApplicationXml); var request = CreateRequest(endpoint, HttpMethod.Post, content: content, query: queryString); var response = await SendRequestAsync(request); return(await ReadAsync <TResult, TResponse>(response)); }
public async Task <IEnumerable <TResult> > PostAsync <TResult, TResponse>(string endPoint, object data) where TResponse : IXeroResponse <TResult>, new() { var uri = GetUri(endPoint); using (var client = GetClient(HttpMethod.Post, uri)) { var content = new StringContent(xmlMapper.To(data), Encoding.UTF8, MimeTypes.ApplicationXml); if (rateLimiter != null) { await rateLimiter.WaitUntilLimit(); } var response = await client.PostAsync(uri, content); return(await Read <TResult, TResponse>(response)); } }
public void nullable_type_roundtrip_xml() { var journal = createJournal(); var xml = _xmlMapper.To(journal); var deserialized = _xmlMapper.From <Journal>(xml); Assert.AreEqual(journal.Id, deserialized.Id); Assert.AreEqual(journal.SourceType, SourceType.AccountsPayablePrepayment); }
public void nullable_type_roundtrip_xml() { var creditNote = createPayment(); var xml = _xmlMapper.To(creditNote); var deserialized = _xmlMapper.From <Payment>(xml); Assert.AreEqual(creditNote.Id, deserialized.Id); Assert.AreEqual(creditNote.Type, deserialized.Type); }
public void nullable_type_xml() { var invoice = createInvoice(); var xml = _xmlMapper.To(invoice); var deserialized = _xmlMapper.From <Invoice>(xml); Assert.AreEqual(invoice.Id, deserialized.Id); Assert.AreEqual(invoice.Type, deserialized.Type); }
public void nullable_type_roundtrip_xml() { var creditNote = createCreditNote(); var xml = _xmlMapper.To(creditNote); var deserialized = _xmlMapper.From <CreditNote>(xml); Assert.IsFalse(object.ReferenceEquals(creditNote, deserialized)); Assert.AreEqual(creditNote.Id, deserialized.Id); Assert.AreEqual(creditNote.Type, deserialized.Type); }
public void nullable_type_roundtrip_xml() { var taxRate = createCreditNote(); var xml = _xmlMapper.To(taxRate); var deserialized = _xmlMapper.From <TaxRate>(xml); Assert.IsFalse(object.ReferenceEquals(taxRate, deserialized)); Assert.AreEqual(taxRate.Name, deserialized.Name); Assert.AreEqual(taxRate.EffectiveRate, deserialized.EffectiveRate); }
public IEnumerable <TResult> Post <TResult, TResponse>(string endPoint, object data) where TResponse : IXeroResponse <TResult>, new() { return(Read <TResult, TResponse>(Client.Post(endPoint, XmlMapper.To(data), query: new QueryGenerator(null, null, Parameters).UrlEncodedQueryString))); }