我有一个客户端,要求我的required字符串元素具有nillable="false",当前wsdl中的所有字符串都出来,即nillable="true",即IE:

<xs:element name="username" nillable="true" type="xs:string" />


我如何更改nillable="false"?!我将对如何执行此操作有任何建议?我是第一个遇到这个问题的人吗?

最佳答案

您的数据合同中如何定义此元素?

如果尚未完成,请尝试在数据成员属性中添加IsRequired=true子句:

[DataContract]
class YourDataStructure
{
   ......

   [DataMember(IsRequired=True)]
   string username;

   .....
}


除此之外,我不知道有什么方法可以影响从WCF数据合同中呈现的XSD,除非编写您自己的WsdlExporter扩展(这是完全可能的,这里似乎有点过大)。

08-03 18:01