无法使用 LinqToTwitter 搜索推文
Can't search for tweets with LinqToTwitter
我正在开始一个新的 c# 项目,我想在其中提取一些推文,目前没有任何具体内容,只是为了开始...
我在 Twitter API 创建了一个开发者用户并创建了一个新的应用程序并获得了所有的 consumerkey 和 accesstoken...
据此 link - https://github.com/JoeMayo/LinqToTwitter/wiki/Single-User-Authorization
一切都应该相当顺利,但我就是没有得到任何结果...
我的项目是一个 .net 控制台应用程序,这是我的代码,几乎是从我上面提到的参考中复制粘贴的:
var auth = new SingleUserAuthorizer
{
CredentialStore = new SingleUserInMemoryCredentialStore
{
ConsumerKey = ...,
ConsumerSecret = ...,
AccessToken = ...,
AccessTokenSecret = ...
}
};
var twitterCtx = new TwitterContext(auth);
var searchResponse =
(from search in twitterCtx.Search
where search.Type == SearchType.Search &&
search.Query == "\"LINQ to Twitter\""
select search)
.SingleOrDefault();
if (searchResponse != null && searchResponse.Statuses != null)
searchResponse.Statuses.ForEach(tweet =>
Console.WriteLine(
"User: {0}, Tweet: {1}",
tweet.User.ScreenNameResponse,
tweet.Text));
我什至不知道如何确定身份验证过程是否成功,
请问有什么帮助吗?
谢谢!
您错过了搜索查询中的 await
:
var searchResponse =
await
(from search in twitterCtx.Search
where search.Type == SearchType.Search &&
search.Query == "\"LINQ to Twitter\""
select search)
.SingleOrDefaultAsync();
LINQ to Twitter 是 async
,这意味着调用链中的所有方法必须 async
并且您必须 await
调用。可能发生的情况是 searchResponse
之前的方法 returns 已填充,但您看不到结果。添加 await
使代码等待响应。
我正在开始一个新的 c# 项目,我想在其中提取一些推文,目前没有任何具体内容,只是为了开始...
我在 Twitter API 创建了一个开发者用户并创建了一个新的应用程序并获得了所有的 consumerkey 和 accesstoken...
据此 link - https://github.com/JoeMayo/LinqToTwitter/wiki/Single-User-Authorization 一切都应该相当顺利,但我就是没有得到任何结果...
我的项目是一个 .net 控制台应用程序,这是我的代码,几乎是从我上面提到的参考中复制粘贴的:
var auth = new SingleUserAuthorizer
{
CredentialStore = new SingleUserInMemoryCredentialStore
{
ConsumerKey = ...,
ConsumerSecret = ...,
AccessToken = ...,
AccessTokenSecret = ...
}
};
var twitterCtx = new TwitterContext(auth);
var searchResponse =
(from search in twitterCtx.Search
where search.Type == SearchType.Search &&
search.Query == "\"LINQ to Twitter\""
select search)
.SingleOrDefault();
if (searchResponse != null && searchResponse.Statuses != null)
searchResponse.Statuses.ForEach(tweet =>
Console.WriteLine(
"User: {0}, Tweet: {1}",
tweet.User.ScreenNameResponse,
tweet.Text));
我什至不知道如何确定身份验证过程是否成功, 请问有什么帮助吗? 谢谢!
您错过了搜索查询中的 await
:
var searchResponse =
await
(from search in twitterCtx.Search
where search.Type == SearchType.Search &&
search.Query == "\"LINQ to Twitter\""
select search)
.SingleOrDefaultAsync();
LINQ to Twitter 是 async
,这意味着调用链中的所有方法必须 async
并且您必须 await
调用。可能发生的情况是 searchResponse
之前的方法 returns 已填充,但您看不到结果。添加 await
使代码等待响应。