Puis-je avoir un paramètre facultatif pour un ASP.NET web service SOAP

Je veux construire un webservice avec cette signature, qui ne permet pas de lever une exception si param2 est laissé vide. Est-ce possible?

[WebMethod]
public string HelloWorld(string param1, bool param2) { }

À l'exception d'un Système.ArgumentException est levée lorsque vous tentez de convertir une chaîne de caractères vide booléens.

Idées qui n'ont pas travaillé jusqu'à présent:

  • la surcharge de méthode n'est pas autorisée pour les services web, comme

    public string HelloWorld(string param1)
    {
        return HelloWorld(param1, false);
    }

comme l'a suggéré ici:

  • faire bool nullable bool?. Même exception.
  • manipuler le WSDL, voir cette réponse

Ma question est liée à cette question, mais la seule réponse à des contrats WCF, que je n'ai pas encore utilisé.

OriginalL'auteur Hauke | 2009-11-12