zoukankan      html  css  js  c++  java
  • WCF基础知识

             在WCF中实体层,需要被序列化,就需要在实体类上加上[DataContract()]这个特性,并且需要在每个实体字段上加上DataMember这个特性。

              当然一般加DataMember时,还会加上几个参数,类似这样的:[DataMember(Name = "CategoryID", IsRequired = true, Order = 0)]

    1)、Name:就是序列化时的名字

    2)、IsRequired:值为true时,要求序列化引擎检查对象是否存在该字段;若无,则会有异常抛出。

    3)、Order:bool类型值,值为true时,序列化和反序列化过程将会按成员定义的顺序进行,这对依赖于成员位置的反序列化过程无比重要。

    4)、EmitDefaultValue表明在数据成员的值等于默认值的情况下,是否还需要将其序列化到最终的XML中。默认值为true,表示默认值会参与序列化。

            WCF宿主有好几种方式,如果我们在IIS中宿主的话,一般是需要建一个svc的文件,建了这个文件后,它会对应生成一个cs文件,在这个cs文件里面调用服务实现层来实现对应的功能。有时候,为了简便起见,可以把这个cs文件删除掉,然后把svc文件打开,里面有一行代码:

    <%@ ServiceHost Language="C#" Debug="true" Service="Test..Service.Student_ServiceLib" %>

             把这行代码的Service的值设置成服务实现层对应的实现类的名称即可,这个默认是指向对应的cs文件,我们已经把cs文件删除了,可以直接指向后台的服务实现层的类。

  • 相关阅读:
    JavaScript关闭窗口的方法
    .NET 实现异步处理的集中方式
    c#调用系统资源大集合-3
    c#调用系统资源大集合-2
    android sqlite 操作使用
    android 适配的大小设置
    java.lang.IllegalStateException: Fragment already added:
    keydown 事件响应处理
    android 图表图形显示推荐 开源库
    android bitmap mutable
  • 原文地址:https://www.cnblogs.com/xiaoxiangfeizi/p/3539826.html
Copyright © 2011-2022 走看看