【问题标题】:Image is not saved in the folder on Server ASP.NET C# MVC图像未保存在服务器 ASP.NET C# MVC 上的文件夹中
【发布时间】:2018-05-27 18:32:54
【问题描述】:

我将图片保存在本地服务器上 asp.net mvc 的文件夹中,它工作正常,图像保存在文件夹中,但在服务器上,图像未保存在文件夹中,我不知道这个问题,但没有图片的产品也成功上传到服务器上。这是我在文件夹中保存图片的代码。

public ActionResult Package(PackageDO model, HttpPostedFileBase file)
    {
        try
        {
                if (file != null)
                {
                    fileName = System.Guid.NewGuid().ToString() + System.IO.Path.GetExtension(file.FileName);
                    string physicalPath = Path.Combine(Server.MapPath("~/Images/Uploads/" + fileName));
                    // save image in folder
                    file.SaveAs(physicalPath);
                }
         }
    }

我的视图看起来像

@using (Html.BeginForm("Package", "Admin", FormMethod.Post, new { enctype = "multipart/form-data", id = "form1" }))
{        
   <input type="file" id="file" name="file">
}

提前致谢。

【问题讨论】:

  • 你能把Path.Combine(Server.MapPath("~/Images/Uploads/" + fileName))换成Server.MapPath("Images/Uploads/" + fileName)再试一次吗?
  • 我也试过了,但没用。
  • 您是否收到任何错误回复?
  • 我没有收到任何错误,表单本身会重定向回来
  • 您的应用需要对该文件夹的写入权限。检查一下。

标签: c# asp.net asp.net-mvc asp.net-mvc-4 asp.net-mvc-3


【解决方案1】:

在服务器上上传任何内容之前如果您的文件夹在服务器上可用,那么您应该必须在服务器上更正对该文件夹的读写权限。一旦获得许可,您就可以轻松地将文件上传到该目录。

您可以按照 Microsoft IIS 指南获取权限here

我在 Godaddy 服务器上遇到过此类问题。我已授予权限,并且成功了。

所以,为上传文件夹设置适当的权限。

谢谢

【讨论】:

    【解决方案2】:

    上传完所有图片后,您可以刷新文件夹。您可以刷新以显示所有新图像。 “刷新”按钮位于“显示所有文件”按钮旁边。因此,上传图像后,您无需单击“显示所有文件”按钮。上传完所有图片后,您可以点击“刷新”按钮。

    【讨论】:

      猜你喜欢
      • 2022-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-10
      相关资源
      最近更新 更多