Datenquellen für das DataGridView festlegen



  • Hi Leute,

    lang ist es her aber nun brauche ich wieder Hilfe.

    Und zwar versuche ich im Rahmen eines Projektes einen Dienst in mein C# Programm einzubinden. Dafür steht mir die URL und ein API-Key von der Webseite zur Verfügung.

    Theoretisch sollte ich Daten von der Internetseite im JSON - Format erhalten und die in Tabellen Form wieder ausgeben. Ich dachte mir, dass ich einfach den DataGridView auf meine Form klatsche die Datenquelle angebe und zack sollte ich eigentlich alle Daten in Tabellenform haben.

    Praktisch funktioniert das ganze leider nicht. Wenn ich beim DataGridView auf Projektdatenquellen gehe und dort den Bereich "Dienst" auswähle, gebe ich anschließend die URL ein und das wars ! Mehr kann ich nicht eingeben und sobald ich auf weiter klicke kommt eine Fehlermeldung.

    Weiß einer was ich da mal wieder falsch mache oder habe ich einen völlig falschen Ansatz gewählt?



  • Wenn du uns jetzt noch über die Fehlermeldung aufklären würdest, könnten wir dir sicherlich helfen.



  • Eines meiner Probleme ist es ja, dass es keine Fehlermeldung gibt. Es passiert gar nichts.

    Ich habe einen API key von einer Website erhalten. Nun stelle ich ein Webrequest. Dafür verlangt die Website 5 Parameter von mir (darunter auch den API key natürlich). Als response sollte ich eigentlich eine Liste mit Daten im Json Format erhalten.

    Nun habe ich einen Button in Forms erstellt und den Webrequest da rein geschrieben. Aber sobald ich darauf drücke erhalte ich gar nichts...

    Könnte mir jemand die richtige Richtung weisen und vielleicht auch kurz erklären wie ich die erhaltenen Daten in Tabellenform wieder ausgebe.



  • Debugge doch bitte erst einmal durch dein Programm und schaue was dir der Service wirklich zurück liefert.



  • private void ding()
            {
    
    try
                {
                    string str_1="49.6163";
                    string str_2= "8.2753";
                    string str_3 = "23";
                    string str_4= "price";
                    string str_5= "e5";
                    string apikey = "xxxxxx-xxxxxx-xxxxx"; 
    
                    ASCIIEncoding byteArray = new ASCIIEncoding();
                    string postdata = "str_1" + str_1 + "str_2" + str_2 + "str_3" + str_3 + "str_4" + str_4 + "str_5" + str_5 + "apikey" + apikey;
                    byte[] data = byteArray.GetBytes(postdata);
    
                    WebRequest request = WebRequest.Create("http://zencipislik.de");
                    request.Credentials = CredentialCache.DefaultCredentials; 
    
                    request.Method = "POST";
                    request.ContentType = "application/json";
                    request.ContentLength = data.Length;
    
                    Stream dataStream = request.GetRequestStream();
                    dataStream.Write(data, 0, data.Length);
    
                    WebResponse response = request.GetResponse();
                    Console.WriteLine(response);
                    dataStream = response.GetResponseStream();
    
                    StreamReader sr = new StreamReader(dataStream);
                    MessageBox.Show(sr.ReadToEnd());
                    sr.Close();
                    dataStream.Close();
                }
    
                catch
                { MessageBox.Show("hat nicht funktioniert"); }
    }
    

    anschließend wird der Methodenname in den Codeblock des Buttons geschrieben:

    private void btn_1_Click(object sender, EventArgs e)
            {
                ding();
    
            }
    

    Die Ausgabe lautet natürlich: hat nicht funktioniert !

    Wo liegt der Fehler ? bin am verzweifelnnnnn


Anmelden zum Antworten