首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WCF DataContract验证

WCF DataContract验证
EN

Stack Overflow用户
提问于 2012-10-01 20:38:54
回答 1查看 3.3K关注 0票数 2

我想知道在验证方面,是否有任何数据注释可以添加到DataContract中的DataMember中。

假设我们有一个名字(字符串)数据成员,我们不希望它的长度超过50个字符。有没有办法捕获它,或者如果名字的长度超过50,我们需要实现一个自定义的faultexception来抛出一个异常。

我们需要这个WCF安全性的验证。对此有何建议?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-01 21:25:05

DataContractSerializer没有允许您通过注释DataMembers以声明方式指定验证的功能。

如果将DataMember定义为属性(而不是字段),则可以在反序列化期间在属性设置器中编写代码来验证数据。代码可以在验证失败或更改数据时抛出异常(例如,在名字成员的示例中将其截断为50个字符)。

代码语言:javascript
复制
[DataMember]
public string FirstName
{
  get { return ...; }
  set { if (value.Length > 50) throw new MyValidationException(); }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12673432

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档