Adwords API C#:将web.config与类库一起使用

时间:2011-10-31 13:53:05

标签: c# asp.net google-adwords

我正在构建ASP.Net MVC应用程序,并希望整合adwords API的功能。

我在项目中为那个类库创建了一些类中的函数。

在我的课程库中,我会像这样实现AdWords用户:

var user = new AdWordsUser();

但是当我在我的网络项目中使用我的库时,它不会在web.config文件中读取adwords配置。

所以我尝试以编程方式传递配置:

var config = new Dictionary<string, string>();

config.Add("EnableGzipCompression", "true");
config.Add("UserAgent", "xxxx");
config.Add("DeveloperToken", "xxxxx");
config.Add("ClientCustomerId", "xxxxx");
config.Add("AuthorizationMethod", "ClientLogin");
config.Add("Email", "xxxxx@xxxxxxx.xxx");
config.Add("Password", "xxxxx");

this.CurrentAdwordsUser = new AdWordsUser(config);

但它告诉我它无法将字符串转换为bool。

有谁知道怎么做?

2 个答案:

答案 0 :(得分:2)

这里的问题是,AdWordsUser(标头)构造函数是一种不推荐使用的标头方法,为了向后兼容v13 API而维护(主要是不推荐使用,但仍可供开发人员使用)。它只需要转换为字符串的SOAP头,而不需要配置参数。

你需要的是:

this.CurrentAdwordsUser = new AdWordsUser();
(this.CurrentAdwordsUser.Config as AdWordsAppConfig).EnableGzipCompression = true;

对于任何其他配置设置也是如此。

顺便说一句,您可能希望在官方AdWords API论坛上发布任何后续问题,因为它受到该库当前维护者的监控:

http://code.google.com/apis/adwords/forum.html

干杯, Anash

答案 1 :(得分:0)

我认为问题可能是你传递“真实”而不是真实。如果您认为这是一个错误,可以在此处打开一个问题:http://code.google.com/p/google-api-adwords-dotnet/issues/list