我可以在app.config文件中使用两个不同的clientId和clientSecret值并在c#中使用PayPal API吗?

我可以在app.config文件中使用两个不同的clientId和clientSecret值并在c#中使用PayPal API吗?,c#,paypal,app-config,paypal-rest-sdk,C#,Paypal,App Config,Paypal Rest Sdk,在同一个C#Winforms应用程序中使用两个不同的clientId和clientSecret值是否有合理的方法 这就是为什么我要这么做:我有一个内部公司应用程序,为客户执行PayPal退款-一些来自我们的美国PayPal帐户,一些来自我们的英国PayPal帐户。因为它们来自不同的帐户,我需要创建两个PayPal应用程序,并获得两组不同的secure clientId和clientSecret值。我真的很希望Winforms应用程序能够退还任何一个帐户,但在这一点上,我只能通过使用PayPal

在同一个C#Winforms应用程序中使用两个不同的clientId和clientSecret值是否有合理的方法

这就是为什么我要这么做:我有一个内部公司应用程序,为客户执行PayPal退款-一些来自我们的美国PayPal帐户,一些来自我们的英国PayPal帐户。因为它们来自不同的帐户,我需要创建两个PayPal应用程序,并获得两组不同的secure clientId和clientSecret值。我真的很希望Winforms应用程序能够退还任何一个帐户,但在这一点上,我只能通过使用PayPal API并在app.config文件中包含以下代码来成功地进行退款

  <!-- PayPal SDK settings -->
  <paypal>
    <settings>
      <add name="mode" value="live" />
      <add name="clientId" value="AZxxxxxxxxxxxxxxxxx" />
      <add name="clientSecret" value="ELxxxxxxxxxxxxxxxxxxxxxxxxxx" />
    </settings>
  </paypal>
我补充说:

    var config = ConfigManager.Instance.GetProperties();
    config.Add("clientId", "AZxxxxxxxxxxxxxxxxxxxxxxxxx");
    config.Add("clientSecret", "ELxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
    var accessToken = new OAuthTokenCredential(config).GetAccessToken();
    var apiContext = new APIContext(accessToken);
这非常有效,我后来在那里添加了一个if()语句来检查它是否是英国订单,并相应地更改了clientId和clientSecret。

根据它们自己的情况,您可以

摘录:

使用PayPal.Api

// Get a reference to the config
var config = ConfigManager.Instance.GetProperties();

// Use OAuthTokenCredential to request an access token from PayPal
var accessToken = new OAuthTokenCredential(config).GetAccessToken();

由于
ConfigManager
正在创建实例,您可以创建自己的实例,也可以使用此实例并相应地进行更改。

paypay是否也有基于构造函数的配置?谢谢!我想这让我走上了正确的道路!我对c#还很陌生,对app.config文件之类的东西还不是很了解,但这确实帮助我达到了目的。
// Get a reference to the config
var config = ConfigManager.Instance.GetProperties();

// Use OAuthTokenCredential to request an access token from PayPal
var accessToken = new OAuthTokenCredential(config).GetAccessToken();