WCF示例(8)

介绍

WCF(Windows Communication Foundation) - 消息处理:使用流数据传输文件,减少内存开销。

示例

1、服务

IStreamed.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
  
using System.ServiceModel;
using System.IO;
  
namespace WCF.ServiceLib.Message
{
  /**//// <summary>
  /// 消息契约(定义与 SOAP 消息相对应的强类型类)
  /// </summary>
  [MessageContract]
  public class FileWrapper
  {
    /**//// <summary>
    /// 指定数据成员为 SOAP 消息头
    /// </summary>
    [MessageHeader]
    public string FilePath;
  
    /**//// <summary>
    /// 指定将成员序列化为 SOAP 正文中的元素
    /// </summary>
    [MessageBodyMember]
    public Stream FileData;
  }
  
  /**//// <summary>
  /// IStreamed接口
  /// </summary>
  [ServiceContract]
  public interface IStreamed
  {
    /**//// <summary>
    /// 上传文件
    /// </summary>
    /// <remarks>
    /// 1、支持数据流传输的绑定有:BasicHttpBinding、NetTcpBinding 和 NetNamedPipeBinding
    /// 2、流数据类型必须是可序列化的 Stream 或 MemoryStream
    // /3、传递时消息体(Message Body)中不能包含其他数据,即参数中只能有一个System.ServiceModel.MessageBodyMember
    /**//// </remarks>
    /// <param name="fileWrapper">WCF.ServiceLib.Message.FileWrapper</param>
    [OperationContract]
    void UploadFile(FileWrapper fileWrapper);
  }
}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索using
, system
, 消息
, public
, message
示例
wcf 示例、wcf tcp示例、wcf https 示例、stm8 iic示例程序、stm8l052r8示例代码,以便于您获取更多的相关知识。

时间: 2024-07-30 16:59:19

WCF示例(8)的相关文章

WCF示例(18)

介绍 WCF(Windows Communication Foundation) - Web编程模型:使用WCF创建REST服务,使用asp.net ajax调用WCF服务 ·System.ServiceModel.Activation.WebServiceHostFactory - 用于承载使用 WCF Web 编程模型的服务 ·System.ServiceModel.Activation.WebScriptServiceHostFactory - 能够向服务中自动添加 ASP.NET AJA

WCF示例(17)

介绍 WCF(Windows Communication Foundation) - 安全(Security):本文以用户名和密码做验证,通过X.509证书做加密为例 示例 1.证书 setup.bat makecert -sr LocalMachine -ss My -a sha1 -n CN=Webabcd -sky exchange -pe certmgr -add -r LocalMachine -s My -c -n Webabcd -s TrustedPeople 2.服务 IHel

WCF示例(15)

介绍 WCF(Windows Communication Foundation) - 可靠性消息(ReliableMessaging): ·通过重试的方法来保证消息的可靠传递,默认为8次 ·当配置了"有序传递"的时候,客户端和服务端会开辟缓冲区,服务端缓冲区在接到所有客户端发来的消息后,按照客户端调用的顺序排序各个消息,然后有序地调用服务端 示例 1.服务 IReliable.cs using System; using System.Collections.Generic; usin

WCF示例(14)

介绍 WCF(Windows Communication Foundation) - 事务(Transaction): ·对契约方法使用TransactionFlowAttribute声明(设置TransactionFlowOption参数),以指定服务操作的事务流策略 ·对服务方法是用OperationBehaviorAttribute声明(设置TransactionScopeRequired参数),以指定方法是否在事务范围(TransactionScope)内执行 ·配置host和clien

WCF示例(13)

并发控制(锁)(Mutex, Semaphore, Monitor, Lock, ThreadPool, Interlocked, ReaderWriterLock) 介绍 WCF(Windows Communication Foundation) - 并发控制:以ConcurrencyMode.Multiple并发模式及InstanceContextMode.Single实例模型为例(此时有并发问题),介绍如何做并发控制,即各种锁的使用(Mutex, Semaphore, Monitor, L

WCF示例(11)

介绍 WCF(Windows Communication Foundation) - 会话状态: ServiceContract ·SessionMode.Allowed - 指定当传入绑定支持会话时,协定也支持会话(默认值) ·SessionMode.Required - 指定协定需要会话绑定.如果绑定并未配置为支持会话,则将引发异常 ·SessionMode.NotAllowed - 指定协定永不支持启动会话的绑定 OperationContract ·IsInitiating - 获取或设

WCF示例(10)

介绍 WCF(Windows Communication Foundation) - 实例模型: ServiceBehavior ·InstanceContextMode.PerCall - 新的 System.ServiceModel.InstanceContext 对象在每次调用前创建,在调用后回收. ·InstanceContextMode.PerSession - 为每个会话创建一个新的 System.ServiceModel.InstanceContext 对象. ·InstanceC

WCF示例(9)

介绍 WCF(Windows Communication Foundation) - 序列化:本文分别以DataContractSerializer, XmlSerializer, DataContractJsonSerializer, SoapFormatter, BinaryFormatter为例. 示例 1.服务 DataContractSerializerObject.cs using System; using System.Collections.Generic; using Sys

WCF示例(7)

介绍 WCF(Windows Communication Foundation) - 消息处理:MTOM(Message Transmission Optimization Mechanism) - 消息传输优化机制.本文以web方式上传大文件为例. 示例 1.服务 IMtom.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.ServiceM