使用LinqToTwitter难以从twiitter访问数据

时间:2014-02-26 21:34:05

标签: c# twitter linq-to-twitter

我在C#中使用以下代码

var users = (from user in twitterCtx1.User
             where user.Type == UserType.Lookup &&
                   user.UserID == list1
             select user)
             .ToList();

list1拥有twitter验证帐户的所有ID,我一次处理75条记录。当我调试我的代码时,我看到list1中填充了所有ID,但是当控件传入代码的这一部分时,它不会进入其中,因为这里传递的值是NULL

我无法理解值为NULL的原因。我在这里缺少什么?

提前致谢!

2 个答案:

答案 0 :(得分:0)

您将user.UserID与整个list1对象进行比较。你的意思是写list1.Contains(user.userID)吗?

答案 1 :(得分:0)

我仍然不清楚你看到的是什么错误,但这里有一些可能会有所帮助的提示。

list1需要是一个以逗号分隔的用户IDS列表的字符串。这里有一些代码来展示它是如何工作的:

        var followers =
            (from user in twitterCtx.SocialGraph
             where user.Type == SocialGraphType.Followers &&
                   user.ScreenName == "JoeMayo"
             select user)
            .SingleOrDefault();

        var userIDs = string.Join(",", followers.IDs.Take(100).ToList());
        var users =
            (from user in twitterCtx.User
             where user.Type == UserType.Lookup &&
                   user.UserID == userIDs
             select user)
            .ToList();

首先,演示获取用户ID列表。它是具有ulong类型的ID集合的用户对象。下一个语句创建一个逗号分隔的字符串,其中包含100个这些ID。最后,查找将逗号分隔的字符串分配给UserID属性。

您应该检查list1并验证它是一个格式正确的逗号分隔的用户ID字符串。最大尺寸为100。