2009-06-04 7 views
1

J'ai un code écrit qui tente de se connecter à un mysql db. J'ai installé this. J'ai ajouté une référence qui est MySql.Data.CF.dll dans le projet. Le projet compile sans aucune plainte.Connexion MySQL dans les références ASP.NET Problème

Quand j'exécute cette ...

string conn_str = ConfigurationManager.ConnectionStrings["MySQLServer"].ConnectionString; 
DataSet m_Dst = new DataSet(); 
DataTable All_Table = new DataTable(); 
try 
{ 
    MySqlCommand cmd = new MySqlCommand(m_SQL, new MySqlConnection(conn_str)); 
    cmd.CommandType = CommandType.Text; 
    cmd.Connection.Open(); 
    MySqlDataAdapter MyDa = new MySqlDataAdapter(cmd); 
    MyDa.Fill(m_Dst); 
    if (m_Dst.Tables.Count > 0) 
     All_Table = m_Dst.Tables[0]; 
} 
catch (Exception ex) 
{ 
    string s = ex.Message; 
} 

je reçois une exception comme suit:

Impossible de trouver des ressources appropriées pour la culture spécifiée ou la culture neutre. Assurez-vous que "MySql.Data.MySqlClient.Properties.Resources.resources" a été correctement intégré ou lié dans l'assembly "MySql.Data.CF" au moment de la compilation, ou que tous les assemblys satellites requis sont chargeables et entièrement signés. "

Est-ce que quelqu'un sait ce que je suis absent ou ai mal fait pour éviter ce propos

Répondre

4

Je voudrais essayer de réinstaller le

connecteur MySql Ensuite, je récrire ce code comme ceci:.

string conn_str = ConfigurationManager.ConnectionStrings["MySQLServer"].ConnectionString; 

DataTable All_Table = new DataTable(); 
using (MySqlConnection cn = new MySqlconnection(conn_str)) 
using (MySqlCommand cmd = new MySqlCommand(m_SQL, cn)) 
{ 
    try 
    { 
     cn.Open(); 
     using (MySqlDataReader rdr = cmd.ExecuteReader()) 
     { 
      All_Table.Load(rdr); 
      rdr.Close(); 
     } 
    } 
    catch (Exception ex) 
    { 
     string s = ex.Message; 
    } 
} 

Vous devez vous assurer que vous disposez de votre connexion et que les blocs qui l'utilisent le feront.

+0

Oui, je prévois d'en disposer mais je ne faisais que tester ça. Et j'ai cette erreur. J'ai déjà essayé de réinstaller ce n'est pas la solution non plus. D'autres idées? – Gabe

+0

Je prendrais le message d'erreur à sa valeur nominale. Il se plaint des assemblages culture/satellite, et donc je m'assurerais que la version localisée du connecteur correspond à votre système, ou que vous avez inclus les assemblages de localisation nécessaires avec le déploiement. –

+0

btw, vous pouvez utiliser 'cn.CreateCommand()' à la place 'new MySqlCommand (,)' – abatishchev

1

J'ai eu le même problème. Mon problème était que je n'ajoutais pas la référence à partir du panneau .NET mais du panneau de navigation .
Après avoir installé la version 6.2.3.0, j'ai ajouté la référence du panneau .NET.
Cela a fonctionné comme un charme.