如何覆盖MongoDB Gridfs中的文件?

时间:2011-09-20 14:26:40

标签: c# mongodb gridfs

我使用以下代码写入MongoDB gridfs:

MongoDB.Driver.GridFS.MongoGridFSCreateOptions createOptions = new MongoDB.Driver.GridFS.MongoGridFSCreateOptions();
createOptions.ContentType = Helper.GetFileExtensionFromFilename(clientToSave.LogoFilename);
var gridFsInfo = adminDB.GridFS.Upload(clientToSave.LogoStream, clientToSave.DatabaseName, createOptions);

当我查看Gridfs时,我可以看到文件似乎被添加,所以我最终会得到许多具有相同名称的文件。当我读取gridfs时,它总是返回最新的文件,所以一切正常,但看起来效率很低。

如何执行覆盖任何具有相同名称的现有文件的MongoDB gridfs写入?

1 个答案:

答案 0 :(得分:5)

mongodb不支持此功能。 我想你可以先删除同名文件。就像:

server[dbName].GridFS.Delete(FileName);
server[dbName].GridFS.Upload(localName, FileName)