Fog Creek Software
Discussion Board

Open Source Persistence frameworks-Delphi and C#

I've been googling for some object relational mapping persistence frameworks and could not find any that would satisfy my requirements-in the Java world I use Hibernate and I would expect something similar.

For C#:

nhibernate- Would have loved to see hibernate in .NET but has not yet released any files

The one that looks pretty good:

Another one that looks a bit complicated:

OJB for .NET - is in pre-alpha

In Delphi I could not find any good tools for working with objects.

Any ideas?

Wednesday, December 3, 2003

There are lots of good tools for working with objects in Delphi. For example:

- Bold (UML design)
- Eagle Software CDK (Control Development Kit - excellent tool which accelerates control design and development)

For persistence frameworks - please try to search on

I found quite a few results by searching on "persistence".

For example:

TechInsite Object Persistence Framework v.1.097  FWS (free with source) 1948 Kb 13 Jan 2003

By TechInsite Pty Ltd. The TechInsite Object Persistence Framework (tiOPF) is a free and Open Source framework of Delphi code that simplifies the mapping of an object oriented business model into a relational database. The project was commenced in 1999 and now features persistence layers for Interbase (IBX), Paradox (BDE), Access and SQLServer (ADO), XML (MSDOM) and Oracle (DOA). The choice of persistence layer can be made at compile time with the appropriate code being included in the main EXE. Persistence layers can also be loaded at runtime, which an application can access data via any of the supported persistence layers just by loading the appropriate package.

Other features of the tiOPF include:

A hierarchy of classes to build a business object model based on GoF's Composite pattern.

Persistence mechanism based on GoF's Visitor and Template Method patterns.

Swappable persistence layers based on GoF's Adaptor and Factory patterns.

Select your own OID generation strategy from Amblers High/Low integer, GUIDs, custom HEX or roll your own OID generator.

Map objects to a database using Ambler's OO-DB mapping strategy, or hand code the mappings your self.

Automatically generate SQL (or XML query strings), compile SQL into the application or store the SQL outside the application using the tiOPF's tiSQLManager which lets you store the SQL in the database it self.

Six persistence layers to choose from, or roll your own.

There are 471 DUnit tests ensure stability.
16 contributing authors.

More information about this product can be found at

I have not used it and I don't know if it's good.

Also - try to search on - there were several results I didn't look at.

Wednesday, December 3, 2003

Uhm, I'm confused.  Maybe i'm a little "old school", but isn't ADO.NET a persistance framework by itself?  DataSets and DataTables do a LOT of stuff for you... 

Anyways, I haven't used this, but some guy keeps trying to push it on the ASP.NET forums.

Wednesday, December 3, 2003

oh, just realized you said "open source", so scratch that last suggestion. 

Wednesday, December 3, 2003

*  Recent Topics

*  Fog Creek Home