Notes on Changeset 71715

Coordinator
Jan 6, 2011 at 3:46 PM

Thanks to Derek for providing me with unit tests and insight to a concurrency issue that Sterling was encountering. You can now concurrently save and load items - before it would throw exceptions in certain cases due to trying to read/write the same item. This is fixed.

As I was fixing the issue I realized that there really wasn't a point to use IEnumerable vs. IQueryable any more on indexes and keys. I'm not deferring execution on the query on the Silverlight side and the Phone side needs a list to do complex LINQ to Object. Therefore, I changed all of the query interfaces to return a straight list. This means it is consistent on Silverlight and the Phone. The list is a copy of the collection stored internally so you don't muck with the actual index Sterling maintains. Because a list supports both IEnumerable and IQueryable, this should not break existing code but it does make the "ToList()" call I suggested on the phone redundant now (you'll just end up with two lists in memory).

This is the changest I am referring to:

http://sterling.codeplex.com/SourceControl/changeset/changes/71715

There are now 77 tests that run green in both the browser and on the phone.

Jan 6, 2011 at 6:12 PM
Edited Jan 6, 2011 at 6:16 PM

I will update my WP7 project and test this weekend and let you know if I have any problems :)