Dave Glick (Page 29)

Object Persistence In Nxdb

The most recent version of Nxdb includes a complete object persistence framework and this post explains some of the motivation behind it and provides some insight into how it was implemented.

Read more...

Introducing Nxdb

A high-performance embedded XML database for .NET.

For the second time in as many weeks, I have the pleasure of announcing a new open source project. This time I've released Nxdb, a high-performance embedded XML database for .NET with full XQuery support. It is essentially a .NET binding for the excellent BaseX Java XML database. However, Nxdb goes well beyond a simple wrapper by providing a native .NET API suitable for embedding (the primary focus of BaseX is on client/server uses), providing additional functionality to interface directly with .NET classes and objects, and rethinking several aspects of the BaseX design for the embedded use case. The underlying BaseX code is cross-compiled to IL using IKVM making Nxdb 100% native .NET, usable on all .NET platforms including Mono.

Read more...

Introducing NiceThreads

A threading utility library designed to make different threading primitives easier to use.

NiceThreads is threading utility library designed to make different threading primitives easier to use with a more consistent API. It started out of frustration with the different options (and more specifically, the different APIs) for enabling thread safety and locks in the .NET framework and how much code was required to use some of them. NiceThreads provides a consistent interface for standard Monitor locks and the ReaderWriterLockSlim class (and possibly others in the future). It also provides support for activating and deactivating these locking primitives through the disposable pattern. Finally, it provides wrappers that can easily provide thread-safety to unsafe objects.

Read more...