Project Description
CodeFx is a .NET based persistence framework (DAL, DTO, Persistence) working with attributes.
The mapping with tables can be made with codesmith templates or manually.
Either a table pattern or a business implementation can be made depending on the the architecture approach.
The DataBase used is MySql but the templates can be updated for others Db.

The type of persistence is defined is the Persistance classes with attributes:

[Persistance("ClassName" , EPersistanceMode.Cache, EPersistanceLevel.Public)]
Persistence is a mix between the persistance Mode (Cache, Session , Items) and the Level (Public or Private).

The DTO classes are implemented with [DataObject] attributes so that asp.net ObjectDataSource can be
used in a standard way.

This framework is on production for the sites www.talentexpo.fr and www.bestperf.com since beginning of 2007

Chek the CodeFxMySqlProvider project for an complete example of using this framework.

*******French Version*******

CodeFx est un framework OpenSource géré sur CodePlex, le site communautaire Open Source .Net. C'est un framework de persistance développé initialement pour le site TalentExpo puis réutilisé pour Bestperf. Il est en production depuis maintenant quelques mois.
Développé en C# sur le framework 2.0, il est utilisé avec des templates CodeSmith qui permettent de générér, en s'appuyant sur le schéma d'une base MySql, l'ensemble des classes
de type DAL, DTO et Persistance.

Ces classes peuvent également être définies manuellement afin de pouvoir définir des classes business.

La persistance, mix entre le mode (Cache, Session, IIS) et le niveau (Public, Private), est définie par attribut sur les classes de types Persistance:

[Persistance("ClassName" , EPersistanceMode.Cache, EPersistanceLevel.Public)]

Les classes DTO sont implémentées avec les attributs [DataObject] afin de pouvoir utiliser les ObjectDataSource d'asp.net de manière standard.

Voir le projet CodeFxMySqlProvider pour un exemple complet d'utilisation.

Last edited Nov 26, 2007 at 10:25 PM by LaurentMorisseau, version 2