Feed
Google+
Contact
XING
LinkedIn
Twitter
ICQ
meebo.com

Webservice programmieren

by Roland Schumacher alias GENiALi 12. Mai 2006 -- 369 words  -- 68 mal gelesen

Ich darf wieder mal was machen. :-)

Jetzt geht es um Webservice. Ist zwar nicht das erste mal wo ich
was mit WS mache, aber es ist schon sehr lange her (etwa 2 Jahre).

Das heisst jetzt, ich darf mich wieder mal in etwas einlesen und einarbeiten.
Da kommen natürlich auch immer wieder interessante Sachen zum vorschein
die auch andere interessieren dürften.

Hier ein Anfang.

  1. Ein "normaler" Webservice ist von der Klasse "System.Web.Services.WebService" abgeleitet.
  2. Die Klasse des WS'es kann man mit Attributen "schmücken". Auf der Ebene der Klasse kenne ich
    im Moment folgende Attribute.
    [WebService
        (
         Namespace="http://MUSS EINDSEIN",
         Description=@"BESCHREIBUNG DES WEBSERVICES.",
         Name=@"NAME DES WEBSERVICES. DIE PROXYKLASSE HEISST DANN ABER AUCH SO. 
               SONST LEER LASSEN ODER LÖSCHEN."
        )
    ]
  3. Auf der Ebene der Methoden kenne ich im Moment folgende Attribute, wo bei es noch mehr gibt.
    Im Moment weiss ich allerdings noch nicht für was die GENAU gut sind.
    [WebMethod
       (
        MessageName = "MethodeAndererName",
        Description = "WasMachtDieMethode",
        EnableSession = false,
        TransactionOption = TransactionOption.Disabled,
        CacheDuration = 60,
        BufferResponse = 
    true
        )
     ]
    - MessageName tauft den Methodenname im Proxy und auf der Testseite um. Das heisst auch,
    dass die Methode im übermittelten XML anders heisst.
    - Description ist klar.
    - EnableSession ermöglicht einem auch in einem WS mit Sessionen zu arbeiten. Der Client muss einfach
    Cookies unterstützen. Nicht ganz ohne.
    - TransactionOption muss man nicht unbedingt angeben. Standart ist eh Disabled. Hier noch die
    Beschreibung aus der MSDN.
    [...]
    TransactionOption - Der Wert dieser Eigenschaft gibt an, ob die XML Web Service-Methode als das Stammobjekt
    einer Transaktion teilnehmen kann. Obwohl Sie die TransactionOption-Eigenschaft auf einen beliebigen Wert der
    TransactionOption-Enumeration setzen können, verfügt eine XML Web Service-Methode nur über zwei mögliche
    Verhaltensweisen: Entweder sie nimmt nicht an einer Transaktion teil (Disabled, NotSupported, Supported),
    oder sie erstellt eine neue Transaktion (Required, RequiresNew). Bei Fehlen weiterer Angaben ist der Standardwert
    TransactionOption.Disabled. Für die Verwendung dieser Eigenschaft müssen Sie einen Verweis auf
    stem.EnterpriseServices.dll
    hinzufügen. Dieser Namespace enthält Methoden und Eigenschaften, die das
    verteilte Transaktionsmodell von COM+-Diensten anzeigen. Die System.EnterpriseServices.ContextUtil-Klasse
    ermöglicht Ihnen das Abstimmen über die Klasse mit Hilfe der SetAbort- oder SetComplete-Methoden.

    [...] 
    - CacheDuration gibt an wie lange ein Ergebnis bei gleicher Parametermenge im Cache gehalten wird.
    Kann man weglassen. Dann ist es null, dass heisst nicht aktiviert.
    - BufferResponse speichert das Ergebnis und übermittelt es in einem Stück. Standart ist true, muss also
    auch nicht angegeben werden. Wenn es auf false steht, dann wird das Ergebnis in 16KB Häppchen übermittelt.

So, dass ist mal alles. Wird sicher noch mehr geben. Wenn jemand noch mehr nützliche Attribute
kennt..... Nur zu. Melden. :-)

Tags:

Entwicklung

Kommentar schreiben

  Country flag

biuquote
  • Kommentar
  • Live Vorschau
Loading

Statistik

Gesamte Posts: 1025
Dieses Jahr: 7
Diesen Monat: 1
Diese Woche: 0
Kommentare: 929
Total Bewertungen: 91
Ø Bewertung: 4,42
Meisten Kommentare
Google+ ... (28)
Beste Ø Bewertung
Tastaturlayout von Visual Stud ... (5)
Meiste Bewertungen
Windows 7 und die ersten Erfah ... (5)

Buttons

Stop Spam Harvesters, Join Project Honey Pot Benutzerprofil von GENiALi connection speed test network connection Bloggeramt.de Slug.ch Blog Verzeichnis und Blog Webkatalog Schumacher Roland Seitwert Valid XHTML 1.0 Transitional

writing