简体   繁体   中英

Proper syntax for parameters in VB function call

I have developed in the past in VB.net and I simply can't figure out how to properly call this function and how to get the response so I can display it on a web page response.

I translated the example c# code to VB. Here is my code behind for an aspx page that I wish to use to make the request and then display the response in my page:

Imports OffAmazonPaymentsService
Imports OffAmazonPaymentsService.Model

Public Class WebForm1
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Response.Write(GetOrderReferenceDetails(???service???, "asdfsadf", "asdfsadf", "asdfasdf"))

    End Sub
    Private Shared Function GetOrderReferenceDetails(service As IOffAmazonPaymentsService, sellerId As String, amazonOrderReferenceId As String, addressConsentToken As String) As GetOrderReferenceDetailsResponse
        ' Required parameters
        Dim request As New GetOrderReferenceDetailsRequest()
        request.SellerId = sellerId
        request.AmazonOrderReferenceId = amazonOrderReferenceId

        ' Optional parameters
        request.AddressConsentToken = addressConsentToken

        Return service.GetOrderReferenceDetails(request)
    End Function
End Class

I don't know how to call that function's first (service) parameter and to then display the contents of the response.

Let me know if my question is not clear enough. here is the example they gave in c sharp format....

using OffAmazonPaymentsService;
using OffAmazonPaymentsService.Model;

public class GetOrderReferenceDetailsSample
{
    /**
     * Sample GetOrderReferenceDetails method that takes generic inputs, constructs a request object,
     * and make a call to the service.
     */
    private static GetOrderReferenceDetailsResponse GetOrderReferenceDetails(
        IOffAmazonPaymentsService service,
        string sellerId,
        string amazonOrderReferenceId,
        string addressConsentToken)
    {
        // Required parameters
        GetOrderReferenceDetailsRequest request = new GetOrderReferenceDetailsRequest();
        request.SellerId = sellerId;
        request.AmazonOrderReferenceId = amazonOrderReferenceId;

        // Optional parameters
        request.AddressConsentToken = addressConsentToken;

        return service.GetOrderReferenceDetails(request);
    }
}

Disclaimer: my VB is "rusty" so debug and improve as necessary

Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load

        Dim props As OffAmazonPaymentsServicePropertyCollection = OffAmazonPaymentsServicePropertyCollection.getInstance()
        Dim client As New OffAmazonPaymentsServiceClient(props)
        Dim result as GetOrderReferenceDetailsResponse = GetAmzOrderRef(client, props, "oref", "token")

End Sub


Private Shared Function GetAmzOrderRef(service As IOffAmazonPaymentsService, props As OffAmazonPaymentsServicePropertyCollection, amazonOrderReferenceId As String, addressConsentToken As String) As GetOrderReferenceDetailsResponse

        Dim request as New GetOrderReferenceDetailsRequest()
        With request
            .SellerId = props.MerchantID
            .AmazonOrderReferenceId = amazonOrderReferenceId
            .AddressConsentToken = addressConsentToken
        End With
        Return service.GetOrderReferenceDetails(request)

End Function

Notes:

  • you should have your config values set ( web.config or app.config as necessary), that's where OffAmazonPaymentsServicePropertyCollection.getInstance() will obtain values

  • the above sample code will fail (as expected) because of dummy values for reference id and token, but that "error" is from the Amazon API (already) - eg response error "invalid reference id" or "invalid token" etc....

Hth....

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM