我通过WCF创建了一个Web服务.然后我将其作为Web服务公开,以使其可用于.NET 2.0应用程序.我用DataMember创建了一些DataContract,可以由暴露的OperationContract使用.
我注意到当我尝试创建要在Web服务中传递的DataClass时,每个DataContract属性现在都为每个成员提供了一个伙伴“Specified”属性.
例如:
[DataContract] public class Sales { [DataMember] public int InvoiceNo; ... }
当我在Web服务客户端中创建Sales实例时.我得到名为InvoiceNo和InvoiceNoSpecified的属性.
现在这里是我的问题,当属性是string类型时,我不需要将相应的“Specified”属性设置为true,但是当属性类型是int或DateTime时,如果我没有设置相应的“Specified”如果属性为true,则该值在Web服务主机中变为null.有没有办法避免设置Specified属性?因为我需要在我的代码中的很多地方调用Web服务功能.要跟踪它们真的很难.