HTML   发布时间:2022-04-14  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了web-services – 为什么需要为int和Data设置Web Service DataMember的Specified Attribute,而不是为String设置大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我通过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或datetiR_749_11845@e时,如果我没有设置相应的“Specified”如果属性为true,则该值在Web服务主机中变为null.有没有办法避免设置Specified属性?因为我需要在我的代码中的很多地方调用Web服务功能.要跟踪它们真的很难.

解决方法

DataMember属性的默认参数是:
bool EmitDefaultValue (default truE)
bool Isrequired (default falsE)

如果您要公开的属性是不可为空的值类型,则应使用:

[DataMember(Isrequired = truE)]
public int InvoiceNo;

大佬总结

以上是大佬教程为你收集整理的web-services – 为什么需要为int和Data设置Web Service DataMember的Specified Attribute,而不是为String设置全部内容,希望文章能够帮你解决web-services – 为什么需要为int和Data设置Web Service DataMember的Specified Attribute,而不是为String设置所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。