我在ASP.net Web窗体应用程序中使用Linq2Twitter来返回最近的用户推文
var tweets = await
(from tweet in ctx.Status
where (
(tweet.Type == StatusType.User)
&& (tweet.ScreenName == screenName)
&& (tweet.ExcludeReplies == true)
&& (tweet.IncludeMyRetweet == false)
&& (tweet.Count == 10)
&& (tweet.RetweetCount < 1)
)
select tweet)
.Take(count)
.ToListAsync();
这似乎运作良好,我得到了预期的Json回归,但是......
当我尝试构建原始推文的链接时......
“https://twitter.com/” + ScreenName + “/status/” + data.StatusId
我得到一个&#34;抱歉,页面不存在错误&#34;。
经过调查,似乎返回的StatusId不正确。例如,返回的StatusId是:
500244784682774500
当实际推文引用:
500244784682774528
换句话说,在这种情况下,StatusId似乎是28漂移。
任何人都可以对正在发生的事情/我做错了吗?
IThanks。
答案 0 :(得分:2)
经过一些调试后,我发现返回LinqtoTwitter应用程序的ID是正确的,问题发生在JSON转换器或JavaScript本身无法处理无符号整数id值。
解决方案是从返回的结果创建一个简单的视图模型(使用针对LinqToTwitter.Status对象的扩展方法)并将其传递给客户端而不是整个数据图。