如何在WCF测试客户端(WcfTestClient.exe)中指定列表参数?

时间:2009-11-24 06:26:29

标签: wcf

我正在使用WCF测试客户端(WcfTestClient.exe)来测试我的一个wcf服务。 我有一个消息合同,其中有一个DataContracts列表: 我的留言合同如下:

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

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

我的数据合同是:

[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; }
        }
    }

当我使用WcfTestClient.exe测试具有UpdateInvoiceStatusesRequest消息合约的服务时,它显示InvoiceStatusHistory的值为length = 0,现在我不知道如何添加对象InvoiceStatusHistory中的List<InvoiceStatusHistory>? 有没有人对它有任何想法,请帮助我?

1 个答案:

答案 0 :(得分:144)

在框中输入length=1。请求参数名称旁边会显示+个符号。单击它,然后在[0]节点上,该节点指示数组中的第一个元素并像往常一样设置其值。