Jeg har brug for at lave en simpel webservice, der lister et produktkatalog, samt tager imod en ordre.
Jeg har lavet en .asmx fil der fint returnere et dataset, og har styr på hvordan det fungere med f.eks. string eller int input.
Der hvor jeg løber panden mod muren er når det kommer til SOAP. Hvordan håndteres SOAP kald i .asmx koden?
Jeg har en class med de properties der er i SOAP kaldet, men jeg kan simpelthen ikke finde ud af hvordan jeg får fat i SOAP kaldet i selve vb.net koden.
Udfordringen er naturligvis at der er et ukendt antal ordrelinjer i SOAP kaldet, og jeg derfor ikke bare kan lave 1:1 mappings, som jeg gør med de input der kommer ved kald af produkter.
Jeg må erkende at jeg simpelthen ikke forstår sammenhæng mellem SOAP udformningen og min function der præsenteres som webservice.
I den simple udgave, som blot returnere, har jeg "Public Function products (ByVal user As String, ByVal password As String) As String". Dette giver mening, og virker naturligvis ved f.eks. GET.
Det jeg ikke forstår er hvordan jeg laver en function der laver et SOAP eksempel hvor body er i retning af
Hvis jeg f.eks. laver en "Public Function order() As Login" hvor login er en class med login properties kan jeg se at SOAP eksemplet i asmx filen inkludere disse properties, men ikke i eksemplet for hvordan SOAP request ser ud.
Min første tanke var at lave en public function med alle de input der skulle til som "Byval xxx as String", men det er jo ikke rigtigt til når antal af ordrelinjer er ukendt.
Det er formodentligt blot undertegnede der ikke ser skoven for bare træer, men klappen er helt gået ned.
Du laver din .asmx med en klasse med nogle metoder, du saetter attribut paa for at markere det som en web service, naar den kaldes foerste gang, saa genererer ASP.NET en masse kode som haandterer SOAP. Der genereres ogsaa en WSDL, saa klienter kan generere stub kode.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.