2012-04-05 4 views
0

Ich schreibe ein Programm, das Daten von einer Windows-Anwendung an eine Website sendet. Im Windows-Formular verwende ich das WebBrowser-Steuerelement, um eine Verbindung zur Website herzustellen und mich anzumelden. Nachdem ich mich angemeldet habe, möchte ich einen Button haben, der, wenn der Benutzer darauf klickt, eine Funktion in der windows.form aufruft, um die Daten an die Webseite im Hintergrund zu senden. Ich kann keinen Weg finden, dies zu tun, ist das tatsächlich möglich? Jede Hilfe wird sehr geschätzt werden, danke.C# WebBrowser Kontrollseite zurück zu Windows.Form Funktion

+0

wie ru planen, die Daten zu senden und welche Art von Daten es ist? Wenn Sie nur Dateien hochladen möchten, die Sie direkt tun können ... oder wenn diese Daten etwas anderes sind als Ihre Website nur nach den Daten fragen ? – gsagrawal

+0

Ist die Schaltfläche auf der Winform oder auf dem Webformular und -wie @gsagrawal sagte - über welche Art von Daten sprechen Sie? (Dies ist ein Grund, um Dienste zu verwenden) – riffnl

+0

Sie können sich anmelden und Daten auf der Website von Windows-Anwendung veröffentlichen. Wie macht man ? Es gibt viele Beispiele im Internet, die dies abdecken. – Coder

Antwort

0

Der Mechanismus, der sofort in den Sinn kommt, ist eine gemeinsame Datei. Ihre WinForms-Anwendung würde einen FileSystemWatcher in einem freigegebenen Verzeichnis einrichten. Dann würde die ASPX-Seite die Datei aktualisieren, damit Ihr WinForm die Daten hochladen kann.

Ich empfehle diese Methode nicht, in dem Glauben, dass ein WindowsService, der über die ASPX-Seite benachrichtigt wurde, vorzuziehen wäre, jedoch sollte das obige eine Umgehung sein, wenn Sie übermäßig an die Architektur gebunden sind, die Sie beschrieben haben.

+0

Vielen Dank an alle für Ihre Kommentare. Meine Fenster bilden Daten von anderer Legacy-Software hoch, die nur auf einem lokalen Computer installiert ist. Im Moment ist es zwingend erforderlich, dass ich eine Windows-Anwendung verwende, um eine Verbindung herzustellen. Aus dem Windows-Formular habe ich ein Formular mit einem Webbrowser-Steuerelement, in dem ich dem Benutzer erlauben, sich zuerst anzumelden. Sobald sich der Benutzer authentifiziert hat, habe ich einen anderen Bildschirm, auf dem der Benutzer einen Knopf haben wird: z.B. Klicken Sie hier, um Daten zu synchronisieren. Sobald der Benutzer unten klickt, möchte ich Daten von meiner lokalen Datenbank an eine entfernte Datenbank senden können. – carol1287

+0

Da sich die Schaltfläche für die Sync-Daten im Webbrowser befindet, versuche ich herauszufinden, ob ich ein Signal an das Windows-Formular senden kann, um den Sendevorgang zu starten. Danke Joshua und dem Rest für deine schnelle Antwort. – carol1287

+0

@ carol1287 Nur weil die Datenbank lokal für die Maschine ist, schließt dies die Einrichtung eines Dienstes nicht aus. Wenn ein WCF-Dienst in einem Windows-Dienst gehostet wird, der lokal auf der Box ausgeführt wird, ruft Ihr ASPX-Button einfach den WCF-Dienst auf und Sie übertragen die Daten. –