SplendidCRM est un portage du célèbre Sugar CRM (écrit en PHP couplé à MySQL comme Data Base Serveur) en C# Dot Net, actuellement en version 3.5, avec comme Data Base MS SQL serveur 2005.
J'ai décidé de porter SplendidCRM en C# Dot Net 4.5 avec l'excellente Base de Donnée FirebirdSQL 2.5.2 (en attendant que Jiri Cincura porte FirebirdClient (drivers Ole DB pour Dot Net) pour la futur version de FireBirdSQL 3.0).
Après la traduction de la structure MS SQL "add is", la nouvelle structure de données FirebirdSQL reprends 243 tables, 420 vues, 719 procédures.
La création de la classes FirebirdClientFactory.cs est d'une simplicité remarquable :-)
using System;
using System.Data;
using System.Data.Common;
//using FirebirdSql.Data.FirebirdClient;
namespace SplendidCRM
{
/// <summary>
/// Summary description for SqlClientFactory.
/// </summary>
public class FirebirdClientFactory : DbProviderFactory
{
public FirebirdClientFactory(string sConnectionString)
: base( sConnectionString
, "FirebirdSql.Data.FirebirdClient"
, "FirebirdSql.Data.FirebirdClient.FbConnection"
, "FirebirdSql.Data.FirebirdClient.FbCommand"
, "FirebirdSql.Data.FirebirdClient.FbDataAdapter"
, "FirebirdSql.Data.FirebirdClient.FbParameter"
, "FirebirdSql.Data.FirebirdClient.FbCommandBuilder"
)
{
}
}
}
La modification du Web.Config a été faite comme ceci :
<appSettings>
<add key="SplendidProvider" value="Firebird"/>
<add key="SplendidFirebird" value="character set=ISO8859_1;client library=j:\firebird-3\fbclient30.dll;Database=d:\FBDATAS\TETRASYS8-v3.FB;Dialect=3;USER=sysdba;password=masterkey;Server=11.5.0.118;port=3054;pooling=true;MinPoolSize=10;MaxPoolSize=20;Connection Lifetime=0"/>
</appSettings>
Ensuite un petit "F5" (juste pour voir!) et .. cela démarre ! comme vous pouvez le constater à l'adresse http://zeos.tetrasys.eu
Comme quoi, c'est pas très compliqué de faire quelque modification dans l'environnement Dot Net !