salut,
Je réalise un projet (site web) sous visual studio 2008 avec une db mysql.
J'ai donc installé le connector 5.2 de mysql, j'ai ajouté la db à l'explorateur de serveur. J'ai ensuite ajouté la connectionString dans le web.config (sans être sûr)
<connectionStrings>
<add name="test"
connectionString="Database=test;Data Source=localhost;User Id=root;Password=;"
providerName="MYSQL.Data.MySQLClient"/>
</connectionStrings>
J'ai ensuite une classe qui me retourne la connectionString et providerName via une propriété Get.
Je veux ensuite faire une classe "genericDataAccess" qui crée la commande.
Celle-ci est reçue d'une autre classe.
Je joins la classe : "genericDataAccess" que j'utilise avec sqlServer mais que je n'arrive pas à mettre en place pour mysql.
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Data.Common;
/// <summary>
/// Description résumée de GenericDataAccess
/// </summary>
public static class GenericDataAccess
{
static GenericDataAccess()
{
}
public static DataTable ExecuteSelectCommand(DbCommand command)
{
DataTable table;
try
{
command.Connection.Open();
DbDataReader reader = command.ExecuteReader();
table = new DataTable();
table.Load(reader);
reader.Close();
}
catch (Exception ex)
{
Utilities.LogError(ex);
throw ex;
}
finally
{
command.Connection.Close();
}
return table;
}
public static DbCommand CreateCommand()
{
string dataProviderName = Configuration.DbProviderName;//Classe qui renvoie via les propriétés les valeurs
string connectionString = Configuration.DbConnectionString;
DbProviderFactory factory = DbProviderFactories.GetFactory(dataProviderName);
DbConnection conn = factory.CreateConnection();
conn.ConnectionString = connectionString;
DbCommand comm = conn.CreateCommand();
comm.CommandType = CommandType.StoredProcedure;
return comm;
}
}
Merci de vos propositions