【发布时间】:2020-05-22 06:41:06
【问题描述】:
我尝试了下面的代码,但又不是我想要的。 只有 1 次珍珠洪水即将来临。有90次洪水。 RT 的人不应该来,只能通过电话来淹没。
作为一个例子,我分享了这张照片。在这种情况下我该怎么办。
const int MaxSearchEntriesToReturn = 100;
const int SearchRateLimit = 180;
string searchTerm = "HANEDANLAR MASASININ YER ALTI EGEMENLİĞİ:RİO TİNTO";
// oldest id you already have for this search term
ulong sinceID = 1;
// used after the first query to track current session
ulong maxID;
var combinedSearchResults = new List<Status>();
List<Status> searchResponse =
await
(from search in ctx.Search
where search.Type == SearchType.Search &&
search.Query == searchTerm &&
search.Count == MaxSearchEntriesToReturn &&
search.SinceID == sinceID &&
search.TweetMode == TweetMode.Extended
select search.Statuses)
.SingleOrDefaultAsync();
if (searchResponse != null)
{
combinedSearchResults.AddRange(searchResponse);
ulong previousMaxID = ulong.MaxValue;
do
{
// one less than the newest id you've just queried
maxID = searchResponse.Min(status => status.StatusID) - 1;
Debug.Assert(maxID < previousMaxID);
previousMaxID = maxID;
searchResponse =
await
(from search in ctx.Search
where search.Type == SearchType.Search &&
search.Query == searchTerm &&
search.Count == MaxSearchEntriesToReturn &&
search.MaxID == maxID &&
search.SinceID == sinceID &&
search.TweetMode == TweetMode.Extended
select search.Statuses)
.SingleOrDefaultAsync();
combinedSearchResults.AddRange(searchResponse);
} while (searchResponse.Any() && combinedSearchResults.Count < SearchRateLimit);
combinedSearchResults.ForEach(tweet =>
Console.WriteLine(
"\n User: {0} ({1})\n Tweet: {2}",
tweet.User.ScreenNameResponse,
tweet.User.UserIDResponse,
tweet.Text ?? tweet.FullText)
);
}
else
{
Console.WriteLine("No entries found.");
}
ViewBag.Twet = combinedSearchResults.ToList();
【问题讨论】:
-
你能分享一些代码并解释这里到底出了什么问题吗?
-
我分享了我的代码。
-
谁能帮帮我??
-
我不是 C# 专家,但 SingleOrDefaultAsync() 方法仅在 Linq 中返回单个条目,因此您将
tweets的值显式设置为单个 Tweet 结果。如果您需要推文列表,则需要更改代码以进行迭代。您还应该知道,Twitter 的标准搜索 API 仅涵盖 7 天的历史记录,因此这可以解释为什么您没有更早地收到推文。 -
是的,我知道我尝试了 ToListAsync() 但没有工作我想做。我的目标是这个链接twitter.com/yazparov/status/1260670500562440194。当我搜索关键字“HANEDANLAR MASASININ YER ALTI EGEMENLİĞİ:”RİO TİNTO”时,所有推文都在 1 到 90 之间。我该怎么做。
标签: asp.net-mvc twitter linq-to-twitter