/// <summary>
///
/// </summary>
///<param name="generateInvoiceNumberRequest"></param>
///<param name="credential">An explicit ICredential object that you want to authenticate this call against</param>
public GenerateInvoiceNumberResponse GenerateInvoiceNumber(GenerateInvoiceNumberRequest generateInvoiceNumberRequest, ICredential credential)
{
IAPICallPreHandler apiCallPreHandler = new PlatformAPICallPreHandler(this.config, generateInvoiceNumberRequest.ToNVPString(string.Empty), ServiceName, "GenerateInvoiceNumber", credential);
((PlatformAPICallPreHandler) apiCallPreHandler).SDKName = SDKName;
((PlatformAPICallPreHandler) apiCallPreHandler).SDKVersion = SDKVersion;
((PlatformAPICallPreHandler) apiCallPreHandler).PortName = "Invoice";
NVPUtil util = new NVPUtil();
return GenerateInvoiceNumberResponse.CreateInstance(util.ParseNVPString(Call(apiCallPreHandler)), string.Empty, -1);
}