使用 WCF 流上传文件,从流中进行微小读取

2024-03-22

我已经使用WCF的流实现了文件上传。一切都按预期进行,但是我遇到了一个问题:我分配 4kb 缓冲区来从传入流中读取数据,但 WCF 仅读取 255 字节。这是我的上传功能:

public UploadResponse UploadFile(FileDto fileDto)
        {
            using (var inStream = fileDto.FileStream)
            using (var outStream = new FileStream("OutFile.txt", FileMode.Create))
            {
                var buffer = new byte[4096];
                int count;
                while ((count = inStream.Read(buffer, 0, buffer.Length)) > 0)
                {
                    outStream.Write(buffer, 0, count);
                }
            }
            return new UploadResponse {DocumentId = -1};
        }

此行仅读取 255 个字节: while ((count = inStream.Read(buffer, 0, buffer.Length)) > 0)。有什么我可以更改的设置,还是我做错了什么?


如果可以的话请发布您的配置。配置应指定默认值或覆盖值,如下所示:

    <binding name="FileTransferServicesBinding"
    maxReceivedMessageSize="1048576" messageEncoding="Mtom">
      <readerQuotas maxArrayLength="1048576" maxBytesPerRead="1048576"
    maxNameTableCharCount="1048576" maxStringContentLength="1048576"> </readerQuotas>
    </binding>

尝试这个MSDN 链接 http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/7b9e9cd9-49f1-498c-85c5-fc869dddae87那家伙提到他也遇到了同样的问题,只获得了 255 字节,他标记了答案,似乎解决了他的问题。它指出:

“为了将流传递给 WCF 方法,Stream 参数必须是操作(或消息正文)中的唯一参数......”

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 WCF 流上传文件,从流中进行微小读取 的相关文章

随机推荐

  • jQuery 的 .data() 缓存是否在 jQuery mobile 中的页面转换中持续存在?

    我刚刚在读 jQuery data API参考 http api jquery com data 之前 我推测它可能通过分配来工作 data 页面元素的属性 有效地捷径 foo attr data foobar bar 1 想象一下 它确实
  • 具有自定义默认值的 EclipseLink JPA 主键

    我的 SQL Server 数据库中有一个表 其中主键字段定义为NEWID 作为默认值 期望客户端不需要传递主键字段值 SQL Server 将处理它 在 JPA 定义模型类时 我必须使用生成类型定义此 ID 字段 我试过IDENTITY
  • 如何通过RPC监听firestore

    我想听firestore中的实时变化 而且我也只允许使用Go 由于 Firestore SDK for Go 没有任何选项来监听实时更改 因此我决定使用 firestore v1beta1 sdk 我编写了以下代码来做到这一点 func T
  • jq:打印对象中每个条目的键和值

    如何得到jq像这样获取 json host1 ip 10 1 2 3 host2 ip 10 1 2 2 host3 ip 10 1 18 1 并生成此输出 host1 10 1 2 3 host2 10 1 2 2 host3 10 1
  • Django 查询中的列比较

    我有以下模型 class Car models Model make models CharField max length 40 mileage limit models IntegerField mileage models Integ
  • 滥用设计模式

    在规范的 四人帮 列表中 是否有任何您经常发现误用 误解或过度使用的设计模式 除了备受争议的单例模式之外 换句话说 是否有一种设计模式您建议在使用之前三思而后行 为什么 工厂模式 我之前被空投到一个项目中 每个人都MyObject系统中有一
  • 从日期中分割日期和时间以单独键入

    我想这样做 Date meetingDateAndTime
  • 非负整数和小数值的验证

    我的字段是 tax rate and tax amount我想在其中验证积极的价值观 我写了这个验证 format gt with gt A d Z 但它并不是像这样取带小数点的数字4 67 它给我带来了一个错误 什么类型的验证适用于整数和
  • 某些曲目上的 SoundCloud API 403

    我已经有一个使用 soundcloud API 将 soundcloud 链接嵌入为有效播放器的应用程序有一段时间了 我最近注意到中等数量的403 Unauthorized从曲目查找返回的错误 api soundcloud com trac
  • UTF-8 和 TinyXML

    由于某种原因 我无法正确从 xml 文件读取数据 例如 我得到的不是 Schr der 而是类似 Schr der 的内容 My code tinyxml2 XMLDocument doc bool open string path if
  • InternalsVisibleTo 不适用于 wpf 应用程序

    我在另一个程序集中设置了 程序集 InternalsVisibleTo GuiAssembly 但是当 wpf 绑定发生在另一个程序集中的类上时 它会抛出异常 因为该类中的属性是内部的 我知道这适用于其他应用程序 但不确定为什么它不适用于这
  • SQL Server 递归 CTE 是否被视为循环?

    我的印象是递归 CTE 是基于集合的 但是在一个最近的SO帖子 https stackoverflow com questions 7824831 generate dates between date ranges 7824919 com
  • Python-Docx 缺少默认模板

    我最近安装了 python docx 包 但在使用默认模板时遇到了一些问题 我只是设置一个文档并具有以下代码 在名为 maintitle py 的文件中 from docx import Document from docx shared
  • K 表示使用 PySpark 进行聚类

    我有一个非常大的数据框 我必须使用数据框中的特定 8 列 其中值要么是 强烈同意 同意 或 不同意 根据这 8 列 我需要创建一个新列来告诉该行属于哪个簇 1 8 最好使用 K 均值聚类 这在 PySpark 中可能吗 PS 我是 PySp
  • CodeIgniter 动态语言功能

    我是 Codeigniter 我需要为用户提供动态语言 我在标题处添加了下拉菜单 我希望允许用户在前端更改网站的语言 我尝试在一个控制器中使用以下代码更改语言 this gt config gt set item language span
  • JProgressBar 未更新

    我制作了一个非常简单的代码来在此处显示它 我有一个按钮应该显示 JDialog 来检查进度状态 我正在使用延迟调用来完成 EDT 并且我的循环不在 run 方法中 那么为什么我的酒吧没有更新吗 这是代码 import javax swing
  • RSpec 场景概要:多个测试用例

    使用 RSpec 测试一堆不同测试用例的最佳方法是什么 例如 给定字符串添加 rb https gist github com 899520 require rspec class String if method defined reve
  • Spring RMI 的替代方案是什么? (因为它已被弃用)

    Spring 似乎正在弃用它的 RMI 从 Spring Framework 5 3 开始 出于安全原因和更广泛的行业支持 现已弃用对多种远程技术的支持 支持基础设施将从 Spring Framework 的下一个主要版本中删除 但我找不到
  • PyQt - 如何导入 .qss 文件?

    如何将 qt 的样式表 qss 文件导入到应用程序 在 HTML 中我们使用 那么如何在 PyQt 中完成呢 或者我可以在哪里阅读相关内容 无法通过谷歌搜索或在 Qt 文档中找到它 qss 文件是一个简单的文本文件 如果您想将样式表应用于您
  • 使用 WCF 流上传文件,从流中进行微小读取

    我已经使用WCF的流实现了文件上传 一切都按预期进行 但是我遇到了一个问题 我分配 4kb 缓冲区来从传入流中读取数据 但 WCF 仅读取 255 字节 这是我的上传功能 public UploadResponse UploadFile F