Announcement

Collapse
No announcement yet.

Aufruf eines WebService mit C#

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Aufruf eines WebService mit C#

    Hallo,

    ich komme im Moment echt nicht weiter, vielleicht könnt ihr mir helfen.

    Ich arbeite mit Visual Studio.NET 2003 und habe eine Konsolenapplikation in C# erstellt. Diese soll einen WebService aufrufen.

    Dazu müsste ich nun den entsprechenden WebVerweis hinzufügen und dann die dadurch generierte Klasse samt Methode benutzen. So weit, so einfach. Ich habe nun folgendes Problem:

    Ich starte den Dialog "WebVerweis hinzufügen" und gebe die URL auf die WSDL von dem WebService ein, den ich aufrufen möchte. Anhand dieser URL findet er auch den WebService und findet auch dessen Methode. Genau die, die ich aufrufen möchte. Allerdings steht auf der rechten Seite in der Box, wo eigentlich die WebService-Informationen angezeigt werden sollten nur folgende Meldung: "The HTML document does not contain Web service discovery information." Und das wars. Ich kann die Referenz nicht hinzufügen, der Button ist ausgegraut.

    Was kann ich nun tun ? Woran kann das liegen ?
    Wie kann ich einen WebService aus C# aufrufen ohne dafür über diesen Dialog einen WebVerweis hinzuzufügen ?

    Grüsse,
    Enrico.

  • #2
    Hallo,
    wenn der Web Service seine WSDL-Beschreibung beim Aufruf im Browser anzeigt, kann man diese als WSDL-Datei speichern, so dass das .NET Framework-Tool <b>wsdl.exe</b> dazu genutzt werden kann, um aus der WSDL-Beschreibung eine Stub-Klasse für C# zu generieren:
    <code>
    C:\Temp>wsdl /language:CS /out:OSFirstWSStub.cs OSFirstWS.wsdl
    </code>
    Die von wsdl.exe generierte Stub-Klasse kann danach über den Kommandozeilen-Compiler csc.exe in eine Assembly-DLL compiliert werden:
    <code>
    C:\temp>csc /target:library OSFirstWSStub.cs
    </code>
    Der C#-Client für den Web Service bindet diese Assembly ein (wobei auch hier der Kommandozeilen-Kompiler ausreicht):
    <code>
    csc /target:exe /reference:OSFirstWSStub.dll CltOSFirstWS.cs
    </code&gt

    Comment


    • #3
      Hallo,

      danke vielmals.
      Mit wsdl.exe hat es prima funktioniert.

      Spitzenforum !
      Bis denne.

      Gruß,
      Enrico

      Comment

      Working...
      X