VB.NET - Webservice - Optionale Parameter

23/02/2008 - 13:39 von Kai Roessel | Report spam
Hallo,

im Rahmen der Globalisierung unserer Software, möchten wir gerne die
Rückmeldungen unseres Webservices Sprachunabhàngig machen. Die Idee ist im
Moment, dass ein Parameter beim Request mit übergeben wird, der angibt in
welcher Sprache die Meldungen zurück geliefert werden.
Da wir aber fertige Programme haben, die diesen Webservice nutzen und nicht
alles auf einmal geàndert werden kann, dachte ich daran einen Optionalen
Wert zu übergeben. Bei Einer Function würde dieses ja so aussehen:

Public Function Irgendwas(ByVal Parameter1 as String, Optional Parameter2 as
String = "Inhalt") as String

Dieses funktioniert aber nicht bei einem Webservice:

<WebMethod(Description:="Hello-World-Test")> Public Function
HelloWorld(Optional LNG as String = "de") As String
Select Case LNG
case "de"
Return "Hallo Welt"
case "en"
Return "Hello World"
case else
Return "Hallo Welt"
end select
End Function

Dieses liefert beim Kompilieren leider einen Fehler.
Gibt es irgend eine Möglichkeit einen Parameter optional zu übergeben?

Gruß

Kai
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
23/02/2008 - 14:04 | Warnen spam
Hallo Kai,

"Kai Roessel" schrieb

Da wir aber fertige Programme haben, die diesen Webservice nutzen und nicht alles auf einmal geàndert werden kann, dachte ich
daran einen Optionalen Wert zu übergeben.



Geht leider nicht. Ebensowenig wie überladene Methoden, da diese dann einen
eindeutigen Meldungsnamen besitzen müssen und sich der Aufruf somit auch
unterscheidet.

<WebMethod( MessageName:="TestOhneParameter" )> _
Public Function Test() As String
Return "Test"
End Function

<WebMethod( MessageName:="TestMitParameter" )> _
Public Function Test( ByVal Value As String ) As String
Return "Test " & Value
End Function

Wenn man bei beiden das Attribut MessageName nicht mit einem eindeutigen
Namen belegt, kommt dann spàt. beim Aufruf eine Fehlermeldung.

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen