我正在创建一个MVC3 Razor应用程序。我使用文件上传。我需要保存并显示图像。上传的图像不会显示在Visual Studio的文件夹中,但是当我从Windows打开相同的文件夹时,会显示图像。之后上传工作正常。
我的控制器:
public ActionResult Save(HttpPostedFileBase attachments)
{
var fileName = Path.GetFileName(attachments.FileName);
var physicalPath = Path.Combine(Server.MapPath("~/App_Data"), fileName);
attachments.SaveAs(physicalPath);
string fnn = fileName;
ViewBag.fnn = fnn;
return Content("");
}
答案 0 :(得分:1)
正如我在评论中所说,Visual Studio中文件夹中显示的项目是用于解决方案的项目。
当您的应用程序在线部署并运行时,它与VS无关。 VS甚至不会运行。
看起来您正在正确上传文件,它的行为与应有的完全相同。如果要将上传的文件添加到VS,只需右键单击该文件夹,然后选择Add
,然后选择Existing Item
并选择该文件。当然,你不需要上传它就可以进入你的解决方案,你可以把它添加到文件夹中开始。
如果您想在自己的网站上显示图片,可以执行以下操作:
<img src="@ViewBag.fnn" alt="Uploaded Image" />
请记住,ViewBag.fnn
必须包含文件的路径,而不仅仅是文件名。而alt=
只是对图像的描述。
答案 1 :(得分:0)
兄弟,无论如何,这些图片都没有显示在目标文件夹上,但是当您使用其他课程(Delete()
,Update()
,Search()
等方式调用它们时,它们将会出现在文件夹上。不要担心,去艾哈迈德