次の ServiceContract があります。
[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 のパラメーターを指定する方法で提案されている回答とまったく同じでした
データ パラメータを必須にするにはどうすればよいですか?