tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
835
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Charriu Charriu ist offline Mitglied Bronze
    Registriert seit
    Sep 2007
    Beiträge
    33
    Hallo,
    Ich hoffe irgendjemand kann mir hier weiter helfen. Ich beginne gerade mich mit dem Thema "WebService" auseinander zu setzen. Habe mit Visual Studio 2008 dann einen solchen WebService angelegt.

    Dieser WebService funktioniert auch, ich kann mit einer ASP.Webanwendung darauf zugreifen und die MEthode aufrufen. Funktioniert alles tadellos, nun aber zum Problem:

    Leider ist es nicht Sinn der Übung gewesen da mit einer Webseite drauf zu zugriefen, weil der WebService durch eine Windows Forms Anwendung konsumiert werden soll. Bin langsam total am berzweifeln, weil ich konnte den WebService mit "Webverweis hinzufügen..." in dem anderen Projekt einbauen. Diesen Menüpunkt gibt es bei einer Windows Form Anwendung gar nicht. Das wird doch aber sicher gehen, oder? Google hat dazu nicht viel ausgespuckt bzw. behauptet einfach das es diesen Befehl im Menü gäbe (siehe Anhang).

    Schonmal vielen Dank im Vorraus!

    Charriu
    Miniaturansicht angehängter Grafiken Miniaturansicht angehängter Grafiken Anfänger: WebService mit WinForm konsumieren-menu.gif  
     

  2. #2
    M4st3r M4st3r ist offline Mitglied Brokat
    Registriert seit
    Jan 2005
    Ort
    Frankfurt am Main
    Beiträge
    297
    Hallo Charriu,

    WebServices sind über die WSDL definiert. MS liefert ein Tool aus (wsdl.exe) mit dessen Hilfe du dir eine Proxy-Klasse erstellen lassen kann welche die Funktionen des WebServices bereitstellt. Hier mal 2 Links die dir weiterhelfen könnten:

    http://www.aspheute.com/artikel/20010622.htm
    http://msdn.microsoft.com/en-us/library/7h3ystb6(VS.71).aspx

    Viel Erfolg!
     
    http://dirkgoldecker.spaces.live.com

    . Microsoft Certified Technology Specialist
    . Microsoft Certified Professional Developer
    |-> Web Applications

  3. #3
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Hi

    Ich hab "nur" die englische Version von VS. Da heißt der Menü-Punkt "Add service reference...". Das müsste bei dir der Punkt "Dienstverweiß hinzufügen..." (ich liebe diese Übersetzungen) sein.
    Da kannst du die Addresse zum WebService angeben (Zur Asmx-Datei).
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  4. #4
    Charriu Charriu ist offline Mitglied Bronze
    Registriert seit
    Sep 2007
    Beiträge
    33
    Hallo,
    Hab es zuerst mit dem Dienstverweis versucht. Da bin ich zwar irgendwie an den WebService rangekommen, aber konnte kein Objekt von dem erzeugen um dann die Methoden aufzurufen. Der hat alles mögliche vorgeschlagen was ich da machen könnte, aber ich bin nicht an die Methode ran gekommen, die meine Daten liefert.

    Aber hier eine Lösung, die bei mir funktioniert hat:
    1. In die Projekteigenschaften gehen
    2. Unter "Anwendung" auf Zielframework "MS .NET 2.0" umstellen
    3. Sichern
    4. Nun Rechtsklick auf das Projekt und "Webverweis hinzufügen..." ist nun da

    Weiß jetzt natürlich nicht, was durch diese Umstellung noch alles nicht mehr geht. Unter "Verweis" im Projektmappen-Explorer haben einige Einträge nun ein gelbes Warnzeichen.

    Aber immerhin kann mein Programm nun den WebService benutzten und das war ja Sinn der Sache.

    Gruß,
    Charriu
     

  5. #5
    Charriu Charriu ist offline Mitglied Bronze
    Registriert seit
    Sep 2007
    Beiträge
    33
    Hallo,
    Der WebService funktioniert nun einwandfrei, wenn ich in unter Visual Studio 2008 starte und meine Methoden machen auch exakt das was sie machen sollen. Nun gehe ich auf das Projekt und "Veröffentliche" in meinem Web-Ordner vom IIS und rufe das ganze im Explorer auf.
    Da kracht es dann, die eine Methode kann aufgerufen werden, die andere geht aber nicht. Es wird eine HTTP 500 angezeigt. Und wenn ich nochmal auf Refreh klicke dann kommt:

    Serverfehler in der Anwendung /.
    --------------------------------------------------------------------------------

    Unbekanntes Anforderungsformat für einen URL, der unerwartet mit '/deployRoE' endet.
    Beschreibung: Unbehandelte Ausnahme beim Ausführen der aktuellen Webanforderung. Überprüfen Sie die Stapelüberwachung, um weitere Informationen über diesen Fehler anzuzeigen und festzustellen, wo der Fehler im Code verursacht wurde.

    Ausnahmedetails: System.InvalidOperationException: Unbekanntes Anforderungsformat für einen URL, der unerwartet mit '/deployRoE' endet.

    Quellfehler:

    Beim Ausführen der aktuellen Webanforderung wurde einen unbehandelte Ausnahme generiert. Informationen über den Ursprung und die Position der Ausnahme können mit der Ausnahmestapelüberwachung angezeigt werden.

    Stapelüberwachung:


    [InvalidOperationException: Unbekanntes Anforderungsformat für einen URL, der unerwartet mit '/deployRoE' endet.]
    System.Web.Services.Protocols.WebServiceHandlerFactory.CoreGetHandler(Type type, HttpContext context, HttpRequest request, HttpResponse response) +502648
    System.Web.Services.Protocols.WebServiceHandlerFactory.GetHandler(HttpContext context, String verb, String url, String filePath) +211
    System.Web.Script.Services.ScriptHandlerFactory.GetHandler(HttpContext context, String requestType, String url, String pathTranslated) +145
    System.Web.HttpApplication.MapHttpHandler(HttpContext context, String requestType, VirtualPath path, String pathTranslated, Boolean useAppConfig) +175
    System.Web.MapHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +128
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +161
    Was mir leider so gar nichts sagt, wie gesagt unter VS läuft auch diese Methode einwandfrei, daher schließe ich einen Programm-Fehler irgendwie aus.

    Sehr merkwürdig das Ganze und ja ich gebe zu, ich hab von der ganzen Geschichte wenig Ahnung. Aber als ich das Praktikum anfing meinten sie, das wäre nicht so schwer und nun kann hier keiner helfen. Hat jemand von euch vielleicht eine Idee?

    Gruß,
    Charriu
     

Ähnliche Themen

  1. c# Winform ConnectionString
    Von julnisch im Forum .NET Datenverwaltung
    Antworten: 3
    Letzter Beitrag: 02.02.10, 09:46
  2. Antworten: 0
    Letzter Beitrag: 03.04.08, 13:44
  3. Run file.Bat von Visual C++ Winform
    Von cclia2004 im Forum .NET Windows Forms
    Antworten: 0
    Letzter Beitrag: 20.03.08, 15:05
  4. Datei an ein WinForm übergeben
    Von OliWan im Forum .NET Archiv
    Antworten: 2
    Letzter Beitrag: 05.08.04, 08:36
  5. WinForm
    Von mgd-one im Forum .NET Archiv
    Antworten: 4
    Letzter Beitrag: 26.11.03, 22:55