本文整理汇总了C#中DataClassesDataContext.XEROPayments方法的典型用法代码示例。如果您正苦于以下问题:C# DataClassesDataContext.XEROPayments方法的具体用法?C# DataClassesDataContext.XEROPayments怎么用?C# DataClassesDataContext.XEROPayments使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DataClassesDataContext
的用法示例。
在下文中一共展示了DataClassesDataContext.XEROPayments方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: PostPaymentsToXero
public HttpResponseMessage PostPaymentsToXero(SearchFilter searchFilter)
{
using (DataClassesDataContext context = new DataClassesDataContext())
{
try
{
var payments = context.XEROPayments(searchFilter.StartDate, searchFilter.EndDate);
foreach (var payment in payments)
{
PaymentToInvoiceViewModelConverter invoiceConverter = new PaymentToInvoiceViewModelConverter();
try
{
InvoiceViewModel invoiceViewModel = invoiceConverter.Convert(payment);
invoicesToPostList.Add(invoiceViewModel);
}
catch (InvoiceValidationException e)
{
ModelStateDictionary dictionary = errorStringConvertor.Convert(e.Message);
return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
}
catch (CustomerDoesNotExistException e)
{
ModelStateDictionary dictionary = errorStringConvertor.Convert(e.Message);
return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
}
}
}
catch (System.Data.SqlClient.SqlException)
{
ModelStateDictionary dictionary = errorStringConvertor.Convert("To many invoices in daterange");
return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
}
}
try
{
xeroLogic.ExportInvoices(invoicesToPostList);
}
catch (XeroApiLimitException e)
{
ModelStateDictionary dictionary = errorStringConvertor.Convert(e.Message);
return this.Request.CreateErrorResponse(HttpStatusCode.BadGateway, dictionary);
}
catch (XeroException e)
{
ModelStateDictionary dictionary = errorStringConvertor.Convert(e.Message);
return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
}
catch (XeroApiValidationException e)
{
ModelStateDictionary dictionary = errorStringConvertor.Convert(e.Message);
return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
}
catch (Exception)
{
ModelStateDictionary dictionary = errorStringConvertor.Convert("Something went wrong. Please check the data and try again.");
return this.Request.CreateErrorResponse(HttpStatusCode.InternalServerError, dictionary);
}
return this.Request.CreateResponse(HttpStatusCode.OK);
}
示例2: GetPayment
public HttpResponseMessage GetPayment(SearchFilter searchFilter)
{
List<PaymentViewModel> resultList = new List<PaymentViewModel>();
using (DataClassesDataContext context = new DataClassesDataContext())
{
try
{
var payments = context.XEROPayments(searchFilter.StartDate, searchFilter.EndDate);
foreach (var payment in payments)
{
PaymentViewModel paymentViewModel = new PaymentViewModel()
{
InvoiceNumber = payment.InvoiceNumber,
ContactName = payment.ContactName,
Email = payment.EmailAddress,
Address1 = payment.POAddressLine1,
Address2 = payment.POAddressLine2,
Address3 = payment.POAddressLine3,
City = payment.POCity,
Region = payment.PORegion,
Country = payment.POCountry,
PostalCode = payment.POPostalCode,
InvoiceDate = payment.InvoiceDate.GetValueOrDefault().ToString("dd-MM-yy"),
DueDate = payment.DueDate.GetValueOrDefault().ToString("dd-MM-yy"),
InventoryItemCode = payment.InventoryItemCode.ToString(),
Description = payment.Description,
Quantity = payment.Quantity.ToString(),
UnitAmount = payment.UnitAmount.ToString(),
Discount = payment.Discount.ToString(),
AccountCode = payment.AccountCode.ToString(),
TaxType = payment.TaxType,
TrackingName = payment.TrackingName1,
TrackingOption = payment.TrackingOption1,
Reference = payment.Reference,
BrandingTheme = payment.BrandingTheme
};
resultList.Add(paymentViewModel);
}
}
catch (System.Data.SqlClient.SqlException)
{
ModelStateDictionary dictionary = errorStringConvertor.Convert("To many payments in daterange");
return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
}
return this.Request.CreateResponse(HttpStatusCode.OK, resultList);
}
}