查找web应用程序的根目录
本文关键字:根目录 应用程序 web 查找 | 更新日期: 2023-09-27 18:01:00
我正试图在服务器上找到一个根文件夹。没有任何工作,或者工作错误
@{
string [] list = Directory.GetFiles(Directory.GetCurrentDirectory());
foreach(var item in list)
{
<p>@item</p>
}
}
显示我不需要的
@{
string [] list = Directory.GetFiles("~/");
foreach(var item in list)
{
<p>@item</p>
}
}
不起作用
如何解决这个问题?
您可以使用以下内容:
Server.MapPath("~");
~
始终是ASP.NET应用程序中的根。如果将其插入Razor视图,它将被转换为"外部访问"的适当路径,例如,如果站点位于根目录中,则~/Content/site.css
将转换为/Content/site.css
;如果站点位于名为Page1
的虚拟目录中,将转换为例如/Page1/Content/site.css
。因此,要获得绝对的路径,你需要"映射它"。
如果您没有访问Server
的权限,也可以使用HostingEnvironment.ApplicationPhysicalPath
。
尝试
Server.MapPath("~");
或:
HostingEnvironment.ApplicationPhysicalPath
参考http://msdn.microsoft.com/en-us/library/ms178116.aspx.为了你的方便,我修改了你的代码:
string [] list = Directory.GetFiles(Server.MapPath("~"));
StringBuilder sb=new StringBuilder();
foreach (var item in list)
{
sb.Append(item + "'n");
}
Response.Write(sb);
尽管我正在给你答案,但我还是建议你尝试在web.config或数据库中配置路径,因为修复路径就像对登录ID进行硬编码一样:(。希望你能抓住我。
感谢