假设我在MongoDB的GridFS中存储了相当大的视频(200多MB)。给定一个ID,我可以查询在客户端播放的视频。
将Asp.Net与C#一起使用,我想知道如何将从GridFS检索到的视频文件流式传输到客户端的视频播放器。我看到很多使用字节数组读取的例子在插入视频播放器之前从文件流中,但是如果同时有很多请求,恐怕会占用服务器的RAM。我计划使用HTML5视频播放器(或任何免费的渐进式下载播放器),但我还没有太多的知识。
以下是我尝试从GridFS检索文件但无法决定下一步做什么的C#代码的一部分。此C#代码的.aspx页面仍保持不变(WebForm .aspx文件)。
String id = Request.QueryString["id"];
var url = new MongoUrl("mongodb://localhost");
var Client = new MongoClient(url);
var db = Client.GetServer().GetDatabase("local");
if (db.GridFS.ExistsById(new ObjectId(id)))
{
var vid = db.GridFS.FindOneById(new ObjectId(id));
using(var fs = vid.OpenRead())
{
}
}