我正在实现wcf服务。 我的课程结构如下:
[DataContract]
public class NotificationsSapInfo
{
[DataMember]
[Required]
[StringLength(3)]
public string ID_CLIENT { get; set; }
[DataMember]
[Required]
[StringLength(60)]
public string ID_OBJECT_CODE { get; set; }
[DataMember]
[Required]
[StringLength(60)]
public string ID_TYPE { get; set; }
[DataMember]
[StringLength(60)]
public string ID_SUB_TYPE { get; set; }
[DataMember]
[StringLength(4)]
public string ID_DIVISION { get; set; }
[DataMember]
[StringLength(50)]
public string ID_LINE { get; set; }
}
发生的问题是,在生成的WSDL中,它似乎忽略了Required
和StringLength
属性。
这是WSDL生成的部分。
<xs:complexType name="NotificationsSapInfo">
<xs:sequence>
<xs:element name="ID_CLIENT" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="ID_DIVISION" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="ID_LINE" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="ID_OBJECT_CODE" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="ID_SUB_TYPE" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="ID_TYPE" type="xs:string" nillable="true" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
我想念什么?
预先感谢
答案 0 :(得分:0)
不确定这是否可以解决您的问题,但我将其用于数据合同和数据验证:
在您的DataMember属性上,尝试添加:IsRequired = true
[DataMember(IsRequired = true)]