2010-11-16 5 views
0

Lorsque j'utilise ce qui suit dans un webmethod:problème avec asmx webmethod qui utilise des données Mysql charge infile locale

string mysqlsPath = Server.MapPath("applog.txt"); 
      command.CommandText = "LOAD DATA LOCAL INFILE '" + mysqlsPath + "' INTO TABLE numbers FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'"; 
      command.ExecuteNonQuery(); 
      connection.Close(); 

J'obtiens l'erreur LOAD DATA LOCAL INFILE ---> Impossible de trouver le fichier « c: \ windows \ system32 \ inetsrv \ inetpubwwwrootwebservicesapplog.txt »

Lorsque l'on regarde cette erreur, j'ai remarqué que, après « iNet » son laisser tomber le « \ » entre le reste des répertoires, ce qui pourrait être la cause et comment puis-je corriger il?

Répondre

0

Vous devez d'abord quitter mysqlsPath variale.

Quelque chose comme ça ferait l'affaire

mysqlsPath = mysqlsPath.Replace(@"\", @"\\"); 

Cela vous permet de convertir le \ à \ de sorte que le C# ne l'enlever.

+0

merci qui a fonctionné parfaitement, ne savait pas C# supprimerait des choses comme ça –