0

我正在开发 ASP.NET MVC 3 应用程序并使用 Paypal SDK for Paypal Website Pro。

我已经创建了如下的 API 凭据。

using System;
using com.paypal.sdk.services;

using com.paypal.sdk.profiles;
using com.paypal.sdk.util;
/**

 */
namespace GenerateCodeNVP
{
public class DoDirectPayment
{
    public DoDirectPayment()
    {
    }
    public string DoDirectPaymentCode(string paymentAction,string amount,string     
creditCardType,string creditCardNumber,string expdate_month,string cvv2Number,string 
firstName,string lastName,string address1,string city,string state,string zip,string 
countryCode,string currencyCode)
    {
        NVPCallerServices caller = new NVPCallerServices();
        IAPIProfile profile = ProfileFactory.createSignatureAPIProfile();
        /*
         WARNING: Do not embed plaintext credentials in your application code.
         Doing so is insecure and against best practices.
         Your API credentials must be handled securely. Please consider
         encrypting them for use in any production environment, and ensure
         that only authorized individuals may view or modify them.
         */

        // Set up your API credentials, PayPal end point, API operation and version.
        profile.APIUsername = "sdk-three_api1.sdk.com";
        profile.APIPassword = "QFZCWN5HZM8VBG7Q";
        profile.APISignature = 
"AVGidzoSQiGWu.lGj3z15HLczXaaAcK6imHawrjefqgclVwBe8imgCHZ";
        profile.Environment="sandbox";
        caller.APIProfile = profile;

        NVPCodec encoder = new NVPCodec();
        encoder["VERSION"] =  "51.0";   
        encoder["METHOD"] =  "DoDirectPayment";

        // Add request-specific fields to the request.
        encoder["PAYMENTACTION"] =  paymentAction;
        encoder["AMT"] =  amount;
        encoder["CREDITCARDTYPE"] =  creditCardType;        
        encoder["ACCT"] =  creditCardNumber;                        
        encoder["EXPDATE"] =  expdate_month;
        encoder["CVV2"] =  cvv2Number;
        encoder["FIRSTNAME"] =  firstName;
        encoder["LASTNAME"] =  lastName;                                        
        encoder["STREET"] =  address1;
        encoder["CITY"] =  city;    
        encoder["STATE"] =  state;          
        encoder["ZIP"] =  zip;  
        encoder["COUNTRYCODE"] = countryCode;
        encoder["CURRENCYCODE"] =  currencyCode;    

        // Execute the API operation and obtain the response.
        string pStrrequestforNvp= encoder.Encode();
        string pStresponsenvp=caller.Call(pStrrequestforNvp);

        NVPCodec decoder = new NVPCodec();
        decoder.Decode(pStresponsenvp);
        return decoder["ACK"];

    }
}

}

但是有些我无法获得成功,因为 paypal sdk 给了我一个中等信任问题。

错误描述是:

That assembly does not allow partially trusted callers

有没有人知道我应该如何解决这个问题?

提前致谢。

4

0 回答 0