About Me

I write code for Microsoft and do web stuff. Want to know more? Read this blog!

My Social World

« Writing a blog for fun and profit… I mean grades | Main | Backing up a Zune Library for when you reinstall Windows »

Playing with Azure and SQL Data Services: No "Random Access Paging"

So, I've started playing around with the whole Azure Services Platform (, now that school's done :) and I thought I'd blog about things I discover along the way.

My first idea was to create a simple blogging engine in MVC that would store data in SQL Data Services and run in Windows Azure (I got my invite code recently, yay!).  However, I soon discovered that would be difficult.  It turns out that while SQL Data Services does support "Paging" the results of a query so that you don't retrieve every result in one batch, it does not support what I refer to as "Random Access Paging".  Random Access Paging (and I'm sure theres some other term for it) basically means providing a page index and page size to the data layer and having it retrieve just that page (i.e. Skip/Take in LINQ).  There are some solutions, but most of them requrire that you step through each page sequentially, rather than just being able to request a page.

Of course, I may be missing something. So, if you know how I could solve this problem, feel free to post in the comments!

In a blogging engine, this is practically a necessity, since you only want to display a certain number of posts per page.  So I've tabled that idea for now.

My next idea: An RSS reader which stores your set of subscribed feeds in your Live Mesh (though I don't have access to that CTP yet).

Reader Comments (1)

Thanks Steve! I was hoping to use SDS, but your solution does look cool. I'll take a look, and maybe revive my blog engine idea :)

January 7, 2009 | Andrew Nurse

Post a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>