Welcome to the Sterling 1.4 Beta. This version is backwards compatible with 1.0 RTM using special upgrade helpers. 1.5 will be the next release version pending any bug-fixes uncovered from the beta.
There are breaking changes that require some refactoring of code. The methods have been renamed for CLS compliance and exposed methods do not have underscores. The default database definition is an in-memory driver that will not persist between sessions. You must supply a persistant driver (i.e. isolated storage) for backwards compatibility.
The 1.5 RTM will be available via NuGet, this version is only available via download from CodePlex.
This product has been used and tested in many applications and contains a full suite of unit tests. You can refer to the User's Guide for complete documentation, and use the unit tests as guides to show various patterns and possibilities with the framework.
This release includes the following new features:
- Fixed trigger on foreign keys, so triggers that generate keys properly save in nested classes
- Added Refresh method to database to refresh the keys and indexes from disk
- Queries now return a full list (copy) of the keys/indexes as opposed to enumerable or queryable, this keeps the original list protected and eliminates different return types between platforms
- Table definitions can be supplied with a predicate to determine if an instance is "dirty" or not. If the predicate returns false, the nested object will not be saved - useful for saving a parent that has lots of children that haven't been updated
- New driver architecture, with a default in-memory driver
- Elevated trust driver for OOB applications that uses the local file system instead of isolated storage
- Table definitions can now be added "on the fly" and are not required to be added only in the database method. Note: the tables must always be added in the same order - Sterling will break if you add table a, table b in one session, then table b and table a in another - regardless of the way you discover tables you must always register them in the same order without skipping any previously defined tables.
- Multiple performance enhancements
- Special upgrade helpers to migrate 1.0 isolated storage databases to 1.4 beta format
- Improved concurrency - added additional locks on type caches and directory paths
- Server (desktop/core framework) version with memory and filesystem driver added
Read this link
for more detailed information. The documentation will be updated over the next several weeks to include the latest features.
Please notify me if you are using the beta as adoption of the beta will ultimately drive when the 1.5 RTM is released. The 1.5 RTM will be 100% backwards compatible with this beta and the only changes will be bug fixes if any are encountered during the beta run.