【问题标题】:Create new PayPal.Payments.DataObjects.TransactionResponse创建新的 PayPal.Payments.DataObjects.TransactionResponse
【发布时间】:2018-01-10 07:52:11
【问题描述】:

是否可以创建一个新的PayPal.Payments.DataObjects.TransactionResponse

我目前正在升级(我们的旧 ERP 系统)到 TLS 1.2,我需要重写一个返回 PayPal.Payments.DataObjects.TransactionResponse 的函数,但 PayPal.Payments.Communication.PayflowNETAPI.SubmitTransaction 返回一个字符串。试图简单地创建一个new PayPal.Payments.DataObjects.TransactionResponse 没有奏效 - 我在 VB 代码中被告知:

“PayPal.Payments.DataObjects.TransactionResponse.Private Sub New()”在此上下文中不可访问,因为它是“私有”的。

在 C# 代码中尝试会产生一个描述性较差的错误:

'TransactionResponse' 不包含采用 0 个参数的构造函数

(将0 替换为您输入的任意数量的参数——我尝试了最多 8 或 9 个)

我对 VisualBasic 或 C# 中的解决方案持开放态度。虽然有问题的函数是在 VB 中,但我们选择将事务发送到内部处理服务器,该服务器将返回字符串(用 C# 编写),所以我可以从任何一方执行此操作。

基本上,我只需要获取响应(当前为字符串格式),可能对其进行解析(尽管直接字符串转换也可以),然后将信息放入PayPal.Payments.DataObjects.TransactionResponse

【问题讨论】:

    标签: c# vb.net paypal


    【解决方案1】:

    你有源代码here

    您可以检查发送给构造函数的参数。

    【讨论】:

      【解决方案2】:

      快速阅读 Ygalbel 提到的 Paypal SDK 代码,似乎没有 new() 函数。相反,您将声明 PayPal.Payments.DataObjects.TransactionResponse 类型的 var,然后使用 set 和 get 访问器在类中设置/获取数据。

      【讨论】:

      • 是的,但不幸的是,TransactionResponse 类型中似乎没有设置访问器。
      • 对不起我的粗略代码,但你说这样的东西不起作用: myObj PayPal.Payments.DataObjects.TransactionResponse myHash Hashtable myHash['PayflowConstants.PARAM_RESULT','val'] myObj .SetParams(myHash) mymyResult mResult myObj.get(mymResult)
      • SetParams 似乎是“put”类等价物,您必须通过哈希表为其提供所有适当的参数。丑陋,但贝宝没有问我。 :)
      猜你喜欢
      • 2021-12-16
      • 1970-01-01
      • 2017-08-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多