如何在MongoDB Gridfs中覆盖一个文件?

7
我正在使用以下代码将数据写入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个回答

5

MongoDB不支持此操作。我认为您可以先删除同名的文件,就像这样:

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接