Vici CoolStorage Features

Vici CoolStorage is a fully typed Object Relational Mapping library for .NET 3.5, Windows Phone and MonoTouch

The main features are:

  • Supports SQL Server 2000-2010, MySQL, SQLite, MS Access and VistaDB on .NET (Other custom providers can be added)
  • Full support for MonoTouch, Mono for Android and Windows Phone (using SQLite)
  • Session-less and context-free database access
  • Any existing relational data model can be mapped to CoolStorage objects with minimal effort
  • No code generator required. Mapping is done by creating simple classes.
  • All relation types are supported: One-To-Many, Many-To-One and Many-To-Many
  • Completely typed object model (no type casts required)
  • Dirty tracking on the column level. Only changed fields are persisted to the database
  • Full support for transactions, including ##TransactionScope##
  • Nullable columns can be mapped to nullable fields or to a default value
  • Delayed (lazy) loading of data to minimize database access. Configurable per field.
  • Selective or automatic prefetching of all relation types for improved query performance
  • Powerful and intuitive database-independent object query language
  • Flexible event mechanism to intercept any event
  • Identity (auto-increment) keys or sequences are supported for all database types
  • Support for server and client generated Guid keys
  • Objects can be mapped to different databases, even across object relations
  • Paging of object collections (at server level)
  • Extensive support for retrieving aggregate values on collections (count, sum, average, ...)
  • Collections implement IBindingList so they can be used by controls (grids) as a data source
  • Underlying database engine uses optimized and parameterized SQL queries. SQL injection is impossible
  • Built specifically for .NET 2.0 and up, taking full advantage of generics and nullable types
  • Raw SQL and/or stored procedures can be called on the underlying database without the need for a separate database connection
  • Small footprint (less than 250 KB, including Vici Core)

iPhone/iPad and Windows Phone support

CoolStorage can also be used on iPhone and Windows Phone (using Monotouch). A separate build for these platforms is available from the download page. It has all the features listed above, but it is limited to the SQLite database format.

More info can be found in the MonoTouch and Windows Phone section