错误代码105表示凭据无效,它通常出现在使用Bing Ads SDK V12进行客户管理操作时。以下是一个代码示例,演示如何解决这个问题:
using Microsoft.BingAds.V12.CustomerManagement;
public class Program
{
private static AuthorizationData _authorizationData;
static void Main(string[] args)
{
// 设置凭据
_authorizationData = new AuthorizationData
{
DeveloperToken = "YOUR_DEVELOPER_TOKEN",
Authentication = new PasswordAuthentication
{
UserName = "YOUR_USERNAME",
Password = "YOUR_PASSWORD",
OAuthTokens = new OAuthTokens
{
AccessToken = "YOUR_ACCESS_TOKEN",
AccessTokenSecret = "YOUR_ACCESS_TOKEN_SECRET",
AuthenticationToken = "YOUR_AUTHENTICATION_TOKEN",
DeveloperToken = "YOUR_DEVELOPER_TOKEN"
}
},
CustomerId = "YOUR_CUSTOMER_ID",
};
// 创建CustomerManagementServiceClient
var customerManagementService = new ServiceClient(ServiceClient.GetVersion(ServiceClientType.CustomerManagement));
// 设置请求头
var customerManagementRequest = new ServiceClientMessageInspector
{
AuthorizationData = _authorizationData
};
customerManagementService.RequestInspector = customerManagementRequest;
// 调用api
var customerResponse = customerManagementService.Call(
(s, r) => s.GetCustomer(
new GetCustomerRequest
{
CustomerId = _authorizationData.CustomerId
}
)
);
// 处理响应
if (customerResponse.Customer != null)
{
Console.WriteLine("Customer Name: " + customerResponse.Customer.Name);
}
// 等待用户输入
Console.ReadKey();
}
}
请确保替换代码中的以下值:
这个例子中,我们首先设置了凭据,包括开发者令牌、用户名、密码和访问令牌等信息。然后,我们使用这些凭据创建了一个CustomerManagementServiceClient实例。接下来,我们将请求头设置为包含凭据的ServiceClientMessageInspector。最后,我们调用GetCustomer方法获取特定客户的详细信息,并处理响应。
请确保您的凭据是正确的,并且您具有足够的权限来执行所需的操作。如果问题仍然存在,请检查您的凭据是否正确,并确保您具有适当的权限。