我的 LinqToTwitter 类无法排除转发。
var srch = (from search in twitterCtx.Search where search.Type == SearchType.Search && search.Query == term && search.Count == 100 select search).SingleOrDefault();
没有关于search.IncludeRetweets==false
的选项。
我怎样才能用它进行搜索?我应该尝试另一门课吗?
最佳答案
Twitter API 不提供该选项,因此 LINQ to Twitter 也不提供该选项。也就是说,您可以执行以下操作:
- 照常执行搜索查询。它将包含转发。
使用设置 RetweetedStatus.StatusID == 0 条件的 where 子句对结果执行 LINQ to Objects 查询,如下所示:
var nonRetweetedStatuses = (from tweet in searchResponse.Statuses where tweet.RetweetedStatus.StatusID == 0 select tweet) .ToList();
我之所以建议使用这样的 where 子句,是因为 LINQ to Twitter 会实例化 RetweetedStatus 的 Status,无论它是否存在。但是,该 Status 的内容是每个属性类型的默认值。由于有效转发的 StatusID 永远不会为 0,因此这是可行的。您还可以过滤另一个字段,例如 Text == null,它仍然有效。
关于twitter - 使用 LinqToTwitter 排除转发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21644806/