WCF开发工具功能强大,可以帮助我们实现许多功能需求。在这里我们会为大家介绍一下WCF服务验证的相关内容,主要包括对其参数以及消息等的验证。希望初学者们能从中获得一些帮助。
创新互联建站是一家集网站建设,青冈企业网站建设,青冈品牌网站建设,网站定制,青冈网站建设报价,网络营销,网络优化,青冈网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
如果你的服务操作接受一些基本类型的参数,譬如:
- [ServiceContract]
- public interface IOrdersService
- {
- [OperationContract]
- int CreateOrder(string currency, double amount);
- }
并且你想要通过WCF服务验证它们,你可以在服务契约中使用基于参数的验证。
- [ServiceContract]
- public interface IOrdersService
- {
- [OperationContract]
- int CreateOrder(
- [NotNullValidator] string currency,
- [RangeValidator(1.0, RangeBoundaryType.Inclusive, 2.0,
- RangeBoundaryType.Inclusive)] double amount);
- }
请注意在服务操作的每一个参数前面的验证属性的用法。这些属性指定了参数验证的必须条件,只有表注了这些属性,Validation Application Block 才能在运行时给予验证。
验证传递给服务操作的消息契约或者数据契约.如果你的服务操作接受一个数据契约参数或者消息契约参数,你事实上可以利用基于契约的验证。譬如,如下的定单数据的数据契约有验证逻辑那确保Currency属性的值是预先定义的值。
- [DataContract]
- public class OrderData
- {
- [DataMember]
- public double Amount
- {
- get { return amount; }
- set { amount = value; }
- }
- [DataMember]
- [DomainValidator("USD","EUR","JPY")]
- public string Currency
- {
- get { return currency; }
- set { currency = value; }
- }
- }
现在,当你在一个服务契约中传递它的时候,你没有必要指定基于参数的验证,因为在传递数据契约的时候它从数据契约中进行验证。
- [OperationContract]
- OrderInfo CreateOrder(OrderData orderData);
为了验证一个业务对象,其实用属性并不是唯一的方法。如果你需要更多的弹性,你还可以通过配置文件完成同样的功能。以上就是对WCF服务验证的相关介绍。
【编辑推荐】
网页名称:WCF服务验证方式介绍
分享URL:http://www.shufengxianlan.com/qtweb/news4/529354.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联