![](/img/trans.png)
[英]ASP.NET MVC [Authorize] from controller in area can't find Account/Login ActionResult in root folder
[英]Find the Directory of folder in root from a aspx page which is inside a folder in asp.net
我有一个aspx页面将图像上传到文件夹.aspx页面位于名为admin的文件夹内。 如果我将aspx页面保留在根目录中,则由于两者都在根目录中,因此我能够在Image文件夹中上传文件。
但是当我做同样的事情将aspx页面保留在一个文件夹中时,它显示Could not find a part of the path 'C:\\Users\\...
因此,我该如何提供路径,以便能够从文件夹内的页面上载文件夹中的图像。
这是我的代码:
if( fu_subcat.PostedFile.ContentLength>0 )
{
fn =Path.GetFileName(fu_subcat.PostedFile.FileName);
fu_subcat.SaveAs(Server.MapPath("imag/" + fn));
}
编辑
它将路径映射为: Could not find a part of the path 'C:\\Users\\lenovo\\Documents\\Visual Studio 2010\\WebSites\\emarket\\Admin\\imag
但是我在emarket内的文件夹为emarket\\imag
而不是emarket\\Admin\\imag
最好将图像保存在单独的内容文件夹中,然后使用tilda在相对路径中引用图像,例如〜“ content / image”
使用〜将使您进入应用程序的虚拟根目录,因此Server.MapPath(“〜/ imag / ...”)应该可以。
发生这种情况是因为当您从
/Admin/page.aspx
Server.MapPath返回相对于/ Admin /的路径-因此最终路径将为/ Admin / imag / ...要从根目录设置路径,应在路径前面添加/。
一定是
fu_subcat.SaveAs(Server.MapPath("/imag/" + fn));
注意/在字符串前面。
或者,您也可以添加〜波浪号
fu_subcat.SaveAs(Server.MapPath("~/imag/" + fn));
指向当前ASP.net应用程序的根。 如果您的应用程序在虚拟目录中运行并且作为全局应用程序的一部分运行,这将非常有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.