3

我的 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

我怎样才能用它进行搜索?我应该尝试其他课程吗?

4

2 回答 2

6

Twitter API 不提供该选项,因此 LINQ to Twitter 也不提供。也就是说,您可以执行以下操作:

  1. 正常执行您的搜索查询。它将包含转推。
  2. 使用设置 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 实例化了一个状态,无论它是否存在。但是,该状态的内容是每个属性类型的默认值。因为对于有效的转推,StatusID 永远不会为 0,所以这是可行的。您还可以过滤另一个字段,例如 Text == null ,它仍然可以工作。

于 2014-02-08T23:12:16.510 回答
2

只需添加到您的搜索词exclude:replies和/或exclude:retweets

term = term + " exclude:replies exclude:retweets";
于 2017-09-21T21:57:19.443 回答