2

我有以下服务合同:

[ServiceContract(Namespace = Constants.NAMESPACE)]
public interface IAuthenticationService
{
    [OperationContract]
    LoginResult Login(LoginData data);
}

[DataContract(Namespace = Constants.NAMESPACE)]
public class LoginData
{
    [DataMember(IsRequired = true, Order = 1)]
    public string SupplierName { get; set; }

    [DataMember(IsRequired = true, Order = 2)]
    public string Token { get; set; }
}

当我使用 Soap UI 创建一个新请求时,请求显示如下:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://namepsace.org/">
   <soapenv:Header/>
   <soapenv:Body>
      <ws:Login>
         <!--Optional:-->
         <ws:data>
            <ws:SupplierName>?</ws:SupplierName>
            <ws:Token>?</ws:Token>
         </ws:data>
      </ws:Login>
   </soapenv:Body>
</soapenv:Envelope>

我找不到<!--Optional:-->数据元素上方的原因。

上面的代码完全按照如何根据需要指定 OperationContract 的参数中建议的答案

我需要做什么才能使 data 参数成为必需?

4

1 回答 1

-1

是您可以使用的,我在搜索此问题的答案时遇到了这个

于 2014-03-05T14:37:59.117 回答