我正在努力使用C# 中的async 和 await方法。
我想确保在继续 API 调用之前填充了我的“clientToken”变量。
然后我await在函数前面放了一个方法,gateway.ClientToken.Generate();但它返回一个错误:
错误 CS1061:“string”不包含“GetAwaiter”的定义,并且找不到接受“string”类型的第一个参数的可访问扩展方法“GetAwaiter”(您是否缺少 using 指令或程序集引用?)
这是我的代码:
public Braintree()
{
InitializeComponent();
Task task = GetBraintreeToken();
}
private async Task GetBraintreeToken()
{
var gateway = new BraintreeGateway
{
Environment = Environment.SANDBOX,
MerchantId = "xxxx",
PublicKey = "xxx",
PrivateKey = "xxxx"
};
var clientToken = await gateway.ClientToken.Generate();
Result<PaymentMethodNonce> result_nonce = gateway.PaymentMethodNonce.Create(clientToken);
}
Run Code Online (Sandbox Code Playgroud)