在方法/数据成员中添加对WCF的限制

Ben*_*307 11 c# xml wcf web-services

我是WCF的新手,我尝试向数据成员添加限制.

例如,这种方法:

[DataMember]
    public string StringValue
    {
        get { return stringValue; }
        set { stringValue = value; }
    }
Run Code Online (Sandbox Code Playgroud)

我想设置最大和最小长度.我知道如何将限制添加到XML代码

 <xs:restriction base="xs:string">
  <xs:minLength value="2"/>
  <xs:maxLength value="10"/>
</xs:restriction>
Run Code Online (Sandbox Code Playgroud)

但有没有办法直接从代码中添加限制?

Pre*_*Roy 8

根据MSDN,maxLength,minLength和length等被忽略.没有声明性的方法可以强制执行您所要求的内容,就像我希望的那样.这是.NET和XML世界之间出现裂缝的地方之一.我发现强制执行的唯一方法是构建一个消息检查器并在其中应用转换.

  • 也基于消息检查器[如何:在WCF中使用模式验证执行消息验证](http://msdn.microsoft.com/en-us/library/ff647820.aspx) (2认同)