A partial implementation of the Reddit API. Includes support for many API endpoints, as well as LINQ-style paging of results.
varreddit=newReddit();varuser=reddit.LogIn("username","password");varsubreddit=reddit.GetSubreddit("/r/example");subreddit.Subscribe();foreach(varpostinsubreddit.New.Take(25)){if(post.Title=="What is my karma?"){// Note: This is an example. Bots are not permitted to cast votes automatically.post.Upvote();varcomment=post.Comment(string.Format("You have {0} link karma!",post.Author.LinkKarma));comment.Distinguish(DistinguishType.Moderator);}}Important note: Make sure you use .Take(int) when working with pagable content. For example, don't do this:
varall=reddit.RSlashAll;foreach(varpostinall)// BAD{// ...}This will cause you to page through everything that has ever been posted on Reddit. Better:
varall=reddit.RSlashAll;foreach(varpostinall.Take(25)){// ...}RedditSharp is developed with the following workflow:
- Nothing happens for weeks/months/years
- Someone needs it to do something it doesn't already do
- That person implements that something and submits a pull request
- Repeat
If it doesn't have a feature that you want it to have, add it! The code isn't that scary.