我不知道如何标题这个问题 - 我正在向PayPal的Express Payment API提出请求。我正在使用他们的dll来帮助发出请求并解析响应。他们的代码工作说明是在web.config
文件中添加授权凭据。我已经这样做了。我的问题是我希望能够编辑动态设置的这些凭据(可能来自SQL),因为我们将允许不同的用户输入他们的API凭据。将请求发送到PayPal看起来像这样
Dim wrapper As New SetExpressCheckoutReq()
wrapper.SetExpressCheckoutRequest = request
Dim service As New PayPalAPIInterfaceServiceService()
Dim setECResponse As SetExpressCheckoutResponseType = service.SetExpressCheckout(wrapper)
编辑请求标头的空间不大,因为{d}中定义了PayPalAPIInterfaceServiceService()
,并根据web.config中的凭据应用自己的标头。
所以,我的问题是,当web.config
查看web.config
时,有没有办法指向 <account apiUsername="****" apiPassword="****" apiSignature="****"/>
到另一个位置?我不确定这是可能的。另外,有没有办法编辑在dll中定义的请求的标头而不更改dll(以保持pci兼容)
以下是web.config中的行:
Settings["string"]
编辑:
我知道动态添加或编辑web.config是不好的,我正在寻找一种指向另一个可以编辑的位置的方法。就像在C#代码中一样,您可以编写{{1}}并指向web.config。 web.config中是否有一种方法可以指向项目中的某个位置,并且可以动态更改此位置
答案 0 :(得分:3)
我同意iefpw手动修改web.config文件是个坏消息,但自从你问到,WebConfigurationManager提供了你正在寻找的功能。
该类有一个Save方法,可以在进行更改后调用。我只使用WebConfigurationManager来读取web.config文件,所以没有代码示例。祝你好运。
答案 1 :(得分:0)
您必须从SQL Server动态执行此操作,每次在Web配置中设置凭据都会弄乱您的系统。 web.config也适用于整个应用程序。从数据库直接进行动态sql查询并提供给paypal。如果您有多个凭据,请不要乱用web.config。