Правильный синтаксис для параметров в вызове функции VB
Я разрабатывал в прошлом на VB.net, и я просто не могу понять, как правильно вызвать эту функцию и как получить ответ, чтобы я мог отобразить его на ответ веб-страницы.
Я перевел пример кода C# на VB. Вот мой код для страницы aspx, которую я хочу использовать, чтобы сделать запрос, а затем отобразить ответ на моей странице:
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
Я не знаю, как вызвать первый (сервисный) параметр этой функции и затем отобразить содержимое ответа.
Дайте мне знать, если мой вопрос недостаточно ясен. вот пример, который они дали в c резком формате....
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);
}
}
1 ответ
Отказ от ответственности: мой VB "ржавый", поэтому отлаживайте и улучшайте по мере необходимости
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
Заметки:
ты должен иметь свой
config
значения установлены (web.config
или жеapp.config
по необходимости) вот гдеOffAmazonPaymentsServicePropertyCollection.getInstance()
будет получать значенияприведенный выше пример кода завершится неудачно (как и ожидалось) из-за фиктивных значений для ссылочного идентификатора и токена, но эта "ошибка" происходит из Amazon API (уже) - например, ошибка ответа "неверный ссылочный идентификатор" или "неверный токен" и т. д...
Hth....