WCF Rest paramètres liés à la complexité de types

La configuration d'un service WCF qui utilise le webHttpBinding... je peux retourner types complexes à partir de la méthode XML ok. Comment dois-je prendre dans un type complexe comme un paramètre?

[ServiceContract(Name = "TestService", Namespace = "http://www.test.com/2009/11")]
public interface ITestService
{
    [OperationContract]
    [WebInvoke(Method = "POST", 
               BodyStyle = WebMessageBodyStyle.Bare, 
               UriTemplate = "/Person/{customerAccountNumber}, {userName}, {password}, {PersonCriteria}")]
    Person SubmitPersonCriteria(string customerAccountNumber, 
                                string userName, 
                                string password, 
                                PersonCriteria details);
}

Depuis le UriTemplate permet uniquement de chaînes, quelle est la meilleure pratique? L'idée est que le client app poster une demande pour le service, comme les critères de recherche pour une personne. Le service va répondre à l'objet contenant les données au format XML.

OriginalL'auteur Excelsior | 2009-11-10