我需要构建原始推文的URL
http://twitter.com/{twitter-user-id}/status/{tweet-staus-id}
Joe linq2twitter上的代码运行正常,但当我将User.ScreenNameResponse替换为他的样本时,User.UserID, UserID始终为零。调试器显示tweet.UserID也为零。大多数字段都已填充。
我的代码:
var twitterCtx = new TwitterContext(getAuth());
var searchResponse =
await
(from search in twitterCtx.Search
where search.Type == SearchType.Search &&
search.Query == searchTxt &&
search.Count == searchCount
select search)
.SingleOrDefaultAsync();
if (searchResponse != null && searchResponse.Statuses != null)
searchResponse.Statuses.ForEach(tweet =>
Console.WriteLine(
"User: {0}, Tweet: {1}",
//tweet.User.ScreenNameResponse,
tweet.User.UserID,
tweet.Text));
版本:3.1.1来自NuGet使用应用认证。
如何获取UserID以便构建推文URL?
This SO thread(使用id_str)没有帮助。
答案 0 :(得分:2)
那将是tweet.User.UserIDResponse。
一些背景:在查询响应中也会查看用作输入参数的任何内容,因此如果用户在查询中省略了参数但Twitter响应包含值,则会从结果中过滤掉它。为了解决这个问题,我采用了一种惯例,其中任何返回参数也匹配输入参数将具有响应'后缀。例如ScreenName(输入)和ScreenNameResponse(输出)。要查找输入的值,每个API(including Search)调用的文档都包含输入/过滤器参数。