2015-09-09 8 views
6

Ich arbeite mit Windows 10 Universal App und der ARM-CPU, um Apps für den Raspberry Pi zu erstellen. Ich bekomme den folgenden Fehler mit der Codierung:Windows -1252 wird nicht für den Kodierungsnamen unterstützt. C#

Zusätzliche Informationen: 'Windows-1252' ist keine unterstützte Codierung Name. Informationen zum Definieren einer benutzerdefinierten Codierung finden Sie in der Dokumentation zur Encoding.RegisterProvider-Methode.

Dies ist mein Code.

private async void Login(string passcode) 
    { 
     try 
     { 
      MySqlConnection conn = new MySqlConnection("Server=127.0.0.1;Port=3306;Database=database;Uid=username;Pwd=password;SslMode=None;charset=utf8"); 
      MySqlCommand cmd; 

      conn.Open(); 

      cmd = new MySqlCommand("Select * from users where User = '" + passcode + "'", conn); 

      MySqlDataReader dr; 

      dr = cmd.ExecuteReader(); 

      int count = 0; 

      while (dr.Read()) 
      { 
       count += 1; 
      } 

      if(count == 1) 
      { 
       var dialog = new MessageDialog("Logged In"); 
       await dialog.ShowAsync(); 
      } 
      else 
      { 
       var dialog = new MessageDialog("Error"); 
       await dialog.ShowAsync(); 
      } 

     } 
     catch (Exception ex) 
     { 
      if (ex is MySqlException) 
      { 
       MySqlException exl = (MySqlException)ex; 
       var dialog = new MessageDialog(ex.Message + Environment.NewLine + exl.Number); 
       await dialog.ShowAsync(); 
      } 
      else 
      { 
       var dialog = new MessageDialog(ex.Message + Environment.NewLine); 
       await dialog.ShowAsync(); 
      } 

      //throw; 
     } 
     finally 
     { 
      conn.Close(); 
     } 


    } 
} 

Ich erhalte den Fehler in dieser Codezeile

dr = cmd.ExecuteReader(); 

Bevor ich es früher bekommen in

conn.open(); 

Aber ich war in der Lage, es zu lösen durch

charset=utf8 
Hinzufügen

an die Verbindungszeichenfolge.

Wie kann ich diesen Fehler beheben?

+2

Nicht sicher hinzugefügt, welche Fragen Sie noch als „ich in der Lage war, es zu lösen, indem sie ...“ letzter Teil der Post ist ... Bitte ersetzen Dankesschreiben mit genaue Frage. –

+0

http://stackoverflow.com/questions/13563973/windows-1255-is-not-a-supported-encoding-name – niksofteng

+1

@AlexeiLevenkov gut ich konnte es lösen, wenn ich den gleichen Fehler in der Zeile Code "Conn .öffnen();" Allerdings bekomme ich jetzt diesen Fehler in der Zeile "dr = cmd.ExecuteReader();" Klärt das das? –

Antwort

9

beschloss ich dieses Problem

System.Text.EncodingProvider ppp; 
ppp = System.Text.CodePagesEncodingProvider.Instance; 
Encoding.RegisterProvider(ppp);