2009-11-24 2 views
47

J'utilise WCF Test Client (WcfTestClient.exe) pour tester un de mes services wcf. J'ai un contrat de message qui a une liste de DataContracts comme: Mon contrat de message est le suivant:Comment spécifier les paramètres de liste dans le client de test WCF (WcfTestClient.exe)?

[MessageContract] 
    public class UpdateInvoiceStatusesRequest 
    { 
     private List<InvoiceStatusHistory> _invoiceStatusHistory; 

     [MessageBodyMember(Order = 0)] 
     public List<InvoiceStatusHistory> InvoiceStatusHistory 
     { 
      get { return _invoiceStatusHistory; } 
      set { _invoiceStatusHistory = value; } 
     }  
    } 

et mon contrat de données est:

[DataContract] 
    public class InvoiceStatusHistory 
    { 
     private int _invoiceId; 
     private int _status; 
     private string _comment; 
     private string _timeStamp; 

     [DataMember] 
     public int InvoiceId 
     { 
      get { return _invoiceId; } 
      set { _invoiceId = value; } 
     } 

     [DataMember] 
     public string Comment 
     { 
      get { return _comment; } 
      set { _comment= value; } 
     } 

     [DataMember] 
     public int Status 
     { 
      get { return _status; } 
      set { _status = value; } 
     } 

     [DataMember] 
     public string TimeStamp 
     { 
      get { return _timeStamp; } 
      set { _timeStamp = value; } 
     } 
    } 

quand je suis en utilisant WcfTestClient.exe à tester le service avec UpdateInvoiceStatusesRequest contrat de message, il montre la valeur de InvoiceStatusHistory comme longueur = 0, maintenant je ne sais pas comment puis-je ajouter les objets de InvoiceStatusHistory dans List<InvoiceStatusHistory>? Quelqu'un at-il une idée à ce sujet, s'il vous plaît aidez-moi?

Répondre

134

Tapez length=1 dans la boîte. Un signe + apparaît à côté du nom du paramètre de la demande. Cliquez dessus, puis sur le nœud [0] qui indique le premier élément du tableau et définissez ses valeurs comme d'habitude.

+0

Merci beaucoup, Darin. –

+2

Merci. Je ne pouvais pas comprendre ça. Comment non-intuitif. :) –

+6

Ouais, ici, je suis 2 ans plus tard et encore confus par cela! – DanTheMan

Questions connexes