Take the 2-minute tour ×
Stack Apps is a question and answer site for apps, scripts, and development with the Stack Exchange API. It's 100% free, no registration required.

Screenshot / Code Snippet

var questions = from q in ctx.Questions
                where q.OwnerID == 34796
                select q;

var multiQuestion = from q in ctx.Questions
                    where q.QuestionIDList == new[] { 369558, 936804 }
                    select q;

var moderators = from u in ctx.Users
                 where u.Moderator == true && u.PageSize == 100 && u.Page == 5
                 select u;

About

StackLINQ is a custom LINQ Provider that allows you to query the StackOverflow API directly using LINQ syntax.

StackLINQ supports:

  • All of the API calls.
  • Vectorized requests
  • Proxy servers (via the Context)
  • Total, Page, PageSize returned on the Context (where applicable)

StackLINQ Apps:

  • StackedDeck: The TweetDeck of StackExchange
  • StackWatcher: The system tray app that notifies you of rep, favorites, and badge awards

Coming soon:

  • Search API
  • Take(), Skip() methods
  • Complete test coverage

License

Released under the MIT Open Source License.

Download

The source is available on BitBucket.

Platform

Windows .NET applications

Contact

StackLINQ was created by Dave Swersky. You can reach me at dave [at] daveswersky.com. Please include "StackLINQ" in the subject line with any questions, and feel free to ask!

Code

StackLINQ was written in C#. The source can be downloaded on BitBucket.

share|improve this question
1  
+ i have been keeping an eye on this. i like where you are going. you don't know how relieved i was when you spoke up. i was not looking forward to breaking the ground on this. –  Sky Sanders Jun 29 '10 at 18:03
    
dave, you might want to make a local temp clone to identify the missing files so that you can resolve them in your main repo so that the solution loads without difficulty. Apparently they are vestigal but the proj files are still referencing them. also, the modeling would be interesting to see. –  Sky Sanders Jun 29 '10 at 18:47
    
@code: It's been quite a journey, LINQ Providers are opaque to say the least ;) I considered basing L2SO on your model, and did a quick spike to try it out, but I had gone too far in another direction. I'll create a clone and clean up the references so the codebase works without issue on download. As for modeling, you want a class diagram? –  Dave Swersky Jun 29 '10 at 19:14
    
i was thinking more of the modeling project and sequence diagrams that are missing from the solution. nothing like hinting at something to get some people wanting it, but i understand scratch projects so no worry if they are not meant to be public. –  Sky Sanders Jun 29 '10 at 19:39
    
@code: The modeling project is no more, the sequence diagram has been added to the main project. –  Dave Swersky Jun 29 '10 at 20:24
    
@Dave - your download link has not been updated to bitbucket.org/dswersky/stacklinq yet (and I'm still lacking appropriate edit rights by far ;) –  Steffen Opel Jul 28 '10 at 9:06
    
@Steffen: Sorry about that, changed the name at your suggestion and forgot to update the links! It should work now: bitbucket.org/dswersky/stacklinq –  Dave Swersky Jul 28 '10 at 16:18
    
@Dave - no worries, just realized it by chance and thought you could make it easier for new users easily ;) –  Steffen Opel Jul 28 '10 at 19:50
add comment

1 Answer 1

Quite impressive - am looking forward for more!

I'm afraid you'll need to change the library name soon though, as LINQToStackOverflow is at odds with the recently published Trademark Guidance, which explicitly asks for only one of the terms, "Stack" or "Exchange" or "Overflow" in your product name.

So may I suggest the obvious: LINQ to Stack ;)

Sounds pretty cool to me and I'd presume the term 'Stack' in itself ranking high SEO wise soon regarding the Stack Exchange sites, despite its generality, and even more so for developer oriented stuff like yours.

share|improve this answer
    
Interesting... I will work on a new name in that case, thanks for pointing that out! –  Dave Swersky Jun 30 '10 at 1:36
    
I propose changing the name to StINQ or something equally clever. –  Soviut Jul 28 '10 at 23:44
    
Why not LinqOverflow –  Mike Brown Feb 17 '13 at 3:27
add comment

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .