C# wsdl中的WCF必需参数

C# wsdl中的WCF必需参数,c#,wcf,C#,Wcf,假设我的WCF服务中有一个方法: [OperationContract] ResponseObj Test(string testString); 当我将此WSDL添加到soapUI时,testString将被标记为optinal <tem:Test> <!--Optional:--> <tem:testString>?</tem:testString> </tem:Test> ? 如何使testString参数成为必需参数?

假设我的WCF服务中有一个方法:

[OperationContract]
ResponseObj Test(string testString);
当我将此WSDL添加到soapUI时,testString将被标记为optinal

<tem:Test>
<!--Optional:-->
<tem:testString>?</tem:testString>
</tem:Test>

?
如何使testString参数成为必需参数?
我是否需要在OperationContract方法中添加一些内容?或者soapUI中的请求中的所有参数都是可选的?

使用带有属性的数据协定

[OperationContract]
ResponseObj Test(RequestMessage request);


[DataContract]
public class RequestMessage
{
   [DataMember(IsRequired = true)]
   public string TestString{ get; set; }
}

将数据协定与属性的
IsRequired
属性一起使用

[OperationContract]
ResponseObj Test(RequestMessage request);


[DataContract]
public class RequestMessage
{
   [DataMember(IsRequired = true)]
   public string TestString{ get; set; }
}
您仍然可以在调用中省略“request”参数,并在服务器端获取空对象。

您仍然可以在调用中省略“request”参数,并在服务器端获取空对象