iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >WCF Stream对象怎么使用
  • 868
分享到

WCF Stream对象怎么使用

2023-06-17 21:06:03 868人浏览 薄情痞子
摘要

本篇内容介绍了“WCF Stream对象怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!WCF支持对Stream对象的操作,尤其对于传

本篇内容介绍了“WCF Stream对象怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

WCF支持对Stream对象的操作,尤其对于传递size过大的消息而言,如要考虑传递消息的效率,WCF推荐通过Stream进行操作。

然而,WCF Stream对象操作规定了一些限制,在我们编写相关程序时,需要特别注意:

1、绑定的限制

如果需要使用Stream操作,可以使用的绑定只能是BasicHttpBinding,NettcpBinding以及NetNamedPipeBinding。此外,在使用Stream操作时,不能使用ReliableMessaging。如果考虑到消息安全,则此方式是不可取的。

2、对WCF Stream对象的限制

要作为服务操作所传递的消息对象,这样的对象必须是可序列化的。遗憾的是,FileStream类的定义却是不支持序列化的,我们能够使用的WCF Stream对象,包括Stream,MemoryStream等。使用Stream类对象是大多数Stream操作的***。一个有趣的现象是FileStream与Stream类型的转换。例如在服务契约的操作中,有如下的实现:

publicStreamTransferDocument(Documentdocument)  {  FileStreamstream=newFileStream (document.LocalPath,FileMode.Open,FileAccess.Read);  returnstream;  }

注意,操作TransferDocument()的返回类型为Stream,而方法的实现中,返回的对象则为FileStream类型。由于Stream类是FileStream类的父类,这样的实现没有问题。

然而,在客户端调用该操作时,却不能将操作的返回值赋给FileStream类型的对象,如下所示:

Streamstream=m_service.TransferDocument(doc);

此时获得的Stream对象则为null。因而,我们只能这样调用操作:

Streamstream=m_service.TransferDocument(doc);

但是,还有一个奇怪的问题是WCF并不支持Stream对象Length属性的序列化,也就是说,在客户端我们不能使用服务操作返回的Stream对象的Length属性。诸如stream.Length的调用会抛出NotSupportedException异常。

3、TransferMode的限制

若要使用Stream操作,必须修改绑定的TransferMode属性。该属性的默认值为Buffered。我们应该根据操作中Stream对象的参数类型,以决定TransferMode的值分别为Streamed、StreamedRequest或者StreamedResponse。

“WCF Stream对象怎么使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: WCF Stream对象怎么使用

本文链接: https://www.lsjlt.com/news/292753.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • WCF Stream对象怎么使用
    本篇内容介绍了“WCF Stream对象怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!WCF支持对Stream对象的操作,尤其对于传...
    99+
    2023-06-17
  • WCF Stream对象是什么
    本篇内容介绍了“WCF Stream对象是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!由于Stream操作受到绑定的限制,只能使用Ba...
    99+
    2023-06-17
  • WCF Stream对象限制操作是怎样的
    本篇内容主要讲解“WCF Stream对象限制操作是怎样的”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“WCF Stream对象限制操作是怎样的”吧!WCF支持Stream操作,尤其对于传递si...
    99+
    2023-06-17
  • jdk8中怎么使用stream实现对象属性的合并
    这篇“jdk8中怎么使用stream实现对象属性的合并”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“jdk8中怎么使用str...
    99+
    2023-06-26
  • 使用list stream:对List中的对象先进行排序再获取前n个对象
    目录list stream:对List中的对象先进行排序再获取前n个对象接下来我们就来看一下这个方法通过自定义一个的对象比较方法来进行排序将上面实例中的TestUser对象贴出来对L...
    99+
    2024-04-02
  • 使用list stream: 任意对象List拼接字符串
    目录任意对象List拼接字符串String.join方法接下来介绍一种更加方便的处理方式Stream流合并字符串、拼接字符串任意对象List拼接字符串 开发中经常会对List中的数据...
    99+
    2024-04-02
  • 怎么使用Date对象
    本篇内容介绍了“怎么使用Date对象”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Date对象怎么用那?首...
    99+
    2024-04-02
  • localStorage对象怎么使用
    这篇文章主要讲解了“localStorage对象怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“localStorage对象怎么使用”吧! 如前所述...
    99+
    2024-04-02
  • response对象怎么使用
    在Python中,response对象是对HTTP响应的封装。你可以使用以下步骤来使用response对象:1. 导入需要的模块:`...
    99+
    2023-08-18
    response
  • Spark Stream怎么使用
    这篇文章主要讲解了“Spark Stream怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Spark Stream怎么使用”吧!pom.xml<dependency>&n...
    99+
    2023-06-03
  • 怎么使用WCF宿主
    这篇文章将为大家详细讲解有关怎么使用WCF宿主,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。每个WCF服务必须宿主在一个Windows进程中(称为宿主进程)。单个宿主进程可以宿主多个服务,而相同的服务类型...
    99+
    2023-06-17
  • 怎么使用WCF框架
    这篇文章主要为大家展示了“怎么使用WCF框架”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“怎么使用WCF框架”这篇文章吧。框架其实就是一种规范的流程,它可以让我们的流程很清晰,代码更规范。下面我...
    99+
    2023-06-17
  • 怎么使用Java Stream
    本篇内容主要讲解“怎么使用Java Stream”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Java Stream”吧!Stream的特点如果你要用好Stream,你必须搞清楚它的特点...
    99+
    2023-06-15
  • 怎么使用JavaScript的对象
    本篇内容介绍了“怎么使用JavaScript的对象”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • 如何使用stream从List对象中获取某列数据
    目录使用stream从List对象中获取某列数据stream通过List里对象中某个属性最小来取该最小对象总结使用stream从List对象中获取某列数据 在 JDK 8 中增加了 ...
    99+
    2022-12-23
    使用stream List获取某列数据 List获取数据
  • javascript arguments对象怎么使用
    这篇文章主要讲解了“javascript arguments对象怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javascript argument...
    99+
    2024-04-02
  • AOP.NET OracleDataReader对象怎么使用
    这篇文章主要讲解了“AOP.NET OracleDataReader对象怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“AOP.NET OracleDataReader对象怎么使用”吧...
    99+
    2023-06-17
  • 怎么使用JavaScript Math对象
    本篇内容主要讲解“怎么使用JavaScript Math对象”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用JavaScript Math对象”吧!Jav...
    99+
    2024-04-02
  • ASP Session对象怎么使用
    ASP Session对象是一种用于在服务器端存储和访问用户会话数据的机制。它允许开发人员在不同页面之间共享和保持特定用户的数据。下...
    99+
    2023-10-10
    ASP Session
  • ADO Command对象怎么使用
    这篇文章主要介绍“ADO Command对象怎么使用”,在日常操作中,相信很多人在ADO Command对象怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ADO Command对象怎么使用”的疑惑有所...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作