asp.net-web-api – 与web api和web api 2之间的PushStreamConte
我已经创建了两个相同的Web api项目,一个在VS 2012中,另一个在VS 2013中,都以4.5 .NET框架为目标.这些项目是基于Filip W的视频下载教程,在这里找到:
http://www.strathweb.com/2013/01/asynchronously-streaming-video-with-asp-net-web-api/ 复制&将教程中的代码粘贴到VS 2012项目(使用web api 1?)不产生错误(在添加正确的“using”语句之后). 但是,当我在VS 2013项目中遵循相同的步骤时,我会收到以下两个错误:
所以我的猜测是错误2是这个代码的真正问题:
未标识为< action> web api 1& 2?我真的很困惑,因为我正在针对同一个框架,我似乎无法直观的跨越如何解决它.我改变WriteToStream签名的尝试都失败了. 有没有人知道我需要什么来获取PushStreamContent来接受Web api 2或VS 2013或新的C#中的WriteToStream或者这个代码的区别在哪里生活的线索? 解决方法
我不知道这是否是Web API中的一个错误,我们将进行调查.同时您可以尝试以下解决方法:
response.Content = new PushStreamContent(async (Stream outputStream,TransportContext context) => { try { var buffer = new byte[65536]; using (var video = File.Open(filename,FileMode.Open,FileAccess.Read)) { var length = (int)video.Length; var bytesRead = 1; while (length > 0 && bytesRead > 0) { bytesRead = video.Read(buffer,Math.Min(length,buffer.Length)); await outputStream.WriteAsync(buffer,bytesRead); length -= bytesRead; } } } finally { outputStream.Close(); } }); 注意:我做了另一个改变(删除了catch块)到代码来允许异常传播.这样,您的客户知道在服务中发生了一些错误,否则他们会假设一切顺利. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 当usercontrol变得可见时执行javascript
- asp.net – 什么内容类型强制下载文本响应?
- asp.net-mvc – 具有列表和编辑器模板的ViewModel
- asp.net-mvc – 如何在ASP.NET MVC和Entity Framework中扩展
- asp.net – 如何维护具有大量分支的SQL Server DB
- 记一次OAuth碰到的问题
- asp.net-mvc – 在ASP.NET MVC中使用域对象和视图模型时避免
- asp.net – HttpWebRequest正在为404抛出异常
- 如何使用asp.net和c#流式传输Excel 2007或Word 2007文件
- asp.net – 如何修复“System.Security.Permissions.Securi
- asp.net-core – 如何将值更新到appsetting.json
- asp.net-mvc-3 – Telerik MVC网格,在运行时从集
- asp.net-mvc-3 – 在Razor View模型中添加一个类
- asp.net-mvc – 在MVC Action中将SSRS报告导出为
- asp.net – dotnet运行OR dotnet手表与开发环境从
- asp.net-mvc – ASP.NET MVC Razor中的默认radio
- asp.net 分页显示数据表的数据的代码
- 什么时候用ASP.NET MVC来淘汰JavaScript
- asp.net – 在EF中的自联接表中选择Last Childs
- asp.net – Session_Start没有解雇