asp.net-mvc - 在 Mvc 中,使用 RedirectToAction("ReqAction", odetails) 得到错误为“输入不是有效的 base 64 字符串,因为它包含非 base 64 字符”
问题描述
如果在没有对象的情况下通过,它的工作正常
return RedirectToAction("ReqAction");
在用于public HttpPostedFileBase Provisionforattachment { get; set; }
将文件存储在数据库中的模型中。
在以前的模型中转换为字节以将文件存储在数据库中。
byte[] UploadedFile = new byte[oPModelViewObject.Provisionforattachment.InputStream.Length];
oPModelViewObject.Provisionforattachment.InputStream.Read(UploadedFile, 0, UploadedFile.Length);
当文件未上传时,尝试了几次它的工作正常。
发生错误是因为对象包含 HTTPPostedFileBase 类型的 Provisionforattachment。任何人都可以建议使用该对象进行重定向。
解决方案
为什么接受模型只是在模型中接受字符串以仅保存文件名,然后将其直接发布到您的控制器,您可以通过以下代码将其存储到服务器
String TempFileName;
HttpFileCollection MyFileCollection = Request.Files[0];
TempFileName = "C:\\TempFiles\\File_" + MyFileCollection.FileName .ToString();
// Save the file.
MyFileCollection.SaveAs(TempFileName);
参考以下参数以传递您的当前值
RedirectToAction(String)
使用动作名称重定向到指定动作。
RedirectToAction(String, Object)
使用动作名称和路由值重定向到指定动作。
RedirectToAction(String, String)
使用动作名称和控制器名称重定向到指定动作。
RedirectToAction(String, RouteValueDictionary)
使用动作名称和路由字典重定向到指定的动作。
RedirectToAction(String, String, Object)
使用动作名称、控制器名称和路由字典重定向到指定动作。
RedirectToAction(String, String, RouteValueDictionary)
使用操作名称、控制器名称和路由值重定向到指定的操作。
推荐阅读
- mysql - 如何跳过空白表行并仅随机显示空行
- php - Magento 1:从集合中的列数据中删除空格
- javascript - 是否可以在没有 cdn 和 Node 的情况下运行 Babel?
- python - 如何在python中替换列表列表
- git - 上游是回购还是分支?
- gem5 - SimObject 名称在哪里设置?
- python - Tkinter:标记三角形线(create_polygon)
- javascript - 如何解决javascript中的意外问题?
- python - s3fs & 将 CSV 直接上传到 S3 存储桶
- javascript - 使用 ASP.NET Webforms 获取 Javascript 值