you may want to check out snapshot isolation.
http://msdn.microsoft.com/en-us/library/tcbchxcb(v=vs.80).aspx
The basic idea is your writes and reads should be non-blocking as the read operation will only read data for the transactional state it starts in.
Transact Charlie
Msg 3903.. The ROLLBACK TRANSACTION request has no corresponding BEGIN TRANSACTION.
http://nosqlsolution.blogspot.co.uk/