Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
snepnet >> jeg har prøvet dit forslag, men det virker ikke. det er først npr jeg anvender wdsl.exe og derefter vbc.exe til at generere en .dll (som placeres i projektets bin mappe) at det virker.
laver vs ikke den dll idet man vælger "add web reference" eller er der nogle settings jeg kan have overset?
det forstår jeg ikke. jeg har aldrig oplevet problemer med det, og heller ikke været ude for at skulle sætte specielle ting op for at det rullede.
hvordan konstaterer du at det ikke fungerer når du kun laver en web reference. ved blot at tilføje referencen skulle der meget gerne laves en proxy i den dll du genererer fra projektet næste gang du bygger. du kan eventuelt åbne den genererede dll-fil med disassembleren (du kan åbne programmet fra VS-Commandprompten ved at skrive ILDASM). så kan du se om du kan finde den forventede proxy i den.
kan du ikke vise et par kodelinier fra der hvor du prøver at bruge den ? (altså instantiering og kald til et eller andet).
public Class Calculator : Inherits WebService <WebMethod()> Public Function Add(intA As Integer, _ intB As Integer) As Integer Return(intA + intB) End Function End Class
Ok - fedt at det er så overskueligt eksempel du har.
Jeg kunne godt tænke mig at du lavede et lidt mere "live" eksempel, og med det mener jeg, at du splitter det op i to projekter. Ét projekt med din webservice, og ét projekt, hvor du har noget kode der konsumerer din service. Det vil jo ofte være sådan noget der er behov for under alle omstændigheder... Ellers er der ikke rigtig nogen grund til at bygge en service i første omgang.
Det er lidt fordi jeg er lidt usikker på hvad Calculater representerer i den kode du har sendt.... Jeg har lidt den mistanke, at det slet ikke er din proxy, men derimod den "rigtige" klasse.
Hvis du opretter 2 projekter i samme solution : 1) Et ASP.NET Web Service projekt. 2) Et ASP.NET Web Application projekt.
Du sørger så for i dit ASP.NET web application projekt - udelukkende at have en web reference til asmx-filen, og ikke nogen projektreferencer.
Så skulle du meget gerne kunne åbne den assembly som genereres fra dit ASP.NET web application projekt, og se at der er genereret en proxy til dig. Desuden skulle det så også meget gerne virke - uden at du behøver at foretage dig yderligere end en almindelig build.
Jeg håber du kan få det til at makke ret, men råb op hvis der er ballade.... Jeg regner med at sidde her et stykke tid endnu.
hvis du laver ovenstående, vil du typisk for en reference der ligger navgivet som localhost, og du skal - får at "tage fat i den" fra koden instantiere en forekomst af din proxy ved :
localhost.Calculator calc = new localhost.Calculator();
Hvis du laver en web-reference, så skulle du meget gerne kunne se den i dit projekt - og som standard plejer referencen at blive tildelt navnet localhost når du henviser til en asmx-fil der ligger på localhost. hvis den får et andet navn skal du selvfølgelig bruge det.
Den kode du har her : dim objCalc as new Calculator
Tyder på at du "bare" opretter en instans af din Calculator klasse, hvilket du kan fordi den ligger i samme projekt og under samme namespace, men det gør ikke at du bruger webservicen når du kalder calculate..... Det er bare en helt almindelig metode, på et helt almindelig objekt du kalder.
Det er sansynligt at jeg tager fejl, og grunden til at jeg godt kunne tænke mig at du adskildte det i to forskellige projekter, var fordi at vi så kunne undgå at skulle være i tvivl om hvad du instantierer :o)
ok, hvad er det som jeg skal lave i web service applikationen? jeg har jo asmx filen, hvis jeg kompilerer den får jeg det samme som når jeg åbner en browser og skriver stien til asmx filen. der kommer en beskrivelse af add metoden som man kan anvende.
nu er jeg heller ikke den store haj til .net, men alternativet er jo at jeg kan udføre det manuelt ved at anvende kommando linie værktøjerne wdsl.exe og vbc.exe
men er sikker på at vs godt kan udføre det, bliver ved med at prøve til det kommer til at virke :-)
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.