ManagedEsent 1.6 released. LINQ support for PersistentDictionary.

There is a new release of ManagedEsent on Codeplex. There are some new APIs, bugfixes and performance improvements.

The PersistentDictionary class now supports LINQ -- it can examine a query and retrieve only matching records from the database. Some examples of LINQ queries that work this way:

 from x in persistentDictionary where x.Key > 3 select x.Value;

from x in persistentDictionary where x.Key.StartsWith("b") select x.Value

from x in persistentDictionary where (x.Key.CompareTo("a") > 0 && x.Key.CompareTo("c") <= 0) || x.Key.StartsWith("c") select x.Value;

I added a new sample application for the PersistentDictionary, which stores some performance data and allows a simple query. 

For IronPython users there are performance enhancements to the DBM-like esedb module and a new esedbshelve module that provides shelf functionality.