为了账号安全,请及时绑定邮箱和手机立即绑定

如何从 GridFS 检索图像列表?

如何从 GridFS 检索图像列表?

C#
jeck猫 2022-12-24 12:42:38
这是提交一个视图,使用ajax拉取数据。我正在尝试从 MongoDb GridFS 存储桶中检索图像。下载操作有效。但问题是,我使用的视图模型有:public User User { get; set; }public List<IFormFile> ImageUpload { get; set; }我从数据库上下文中获取用户,并使用它来识别存储桶中的图像,我想将其返回到控制器的视图中。以下是我的控制器代码:public IActionResult AddEditUser(int id = 0)        {            if (id == 0)            {                return View(new UserImgBinder());            }            else            {                var userImageId = _context.User.Where(x => x.UserId.Equals(id)).Select(y => y.AvatarImg).ToString();                var stream = ContextNew.ImagesBucket.OpenDownloadStream(new ObjectId(userImageId.ToBson()));                var contentType = stream.FileInfo.Metadata["ContentType"].AsString;                //File(stream, contentType);                IFormFile file = new  FormFile(stream, 0, stream.Length,"","");                 var UserImgBinder = new UserImgBinder                {                    User = _context.User.Where(x => x.UserId.Equals(id)).FirstOrDefault(),                    ImageUpload = file            };                return View(UserImgBinder);            }        }由于 ImageUpload 是 List 类型,而我试图提供给它的不是列表,所以我收到了错误。我应该写什么来解决这个问题?这种方法不好吗?请帮忙。谢谢。
查看完整描述

1 回答

?
达令说

TA贡献1821条经验 获得超6个赞

尝试如下代码:


var UserImgBinder = new UserImgBinder

{

    User = _context.User.Where(x => x.UserId.Equals(id)).FirstOrDefault(),

    ImageUpload = new List<IFormFile> {

                file

            }

};


查看完整回答
反对 回复 2022-12-24
  • 1 回答
  • 0 关注
  • 59 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信