我有一个包含三个不同地图的项目文件夹
在管理员中我可以上传图片,而在网络上我可以查看它们。目前我想将图像保存在〜/ _upload / Images下,因此在PrintedInSpace.Admin之外。所以我创建了一个虚拟目录
以下是路径:
以下是IIS中的样子:
但是当我尝试将图像上传到虚拟路径时会出现问题,它说它无法找到路径。这并不奇怪,因为路径并不存在。但是我确实在IIS中创建了虚拟路径,所以我的问题是,我是否误解了虚拟目录的概念,或者我是否对iis或代码做错了?
代码:
_fiuImage.SaveAs(FULLPATH);
fullPath的值为" D:\ SVN \ PrintedInSpaceSolution \ PrintedInSpace.Admin \ _upload \ Images \ Panda.png"
(所有\是双\但StackOverflow删除它们)
错误:
"无法找到路径的一部分' D:\ SVN \ PrintedInSpaceSolution \ PrintedInSpace.Admin_upload \ Images \ Panda.png'。"
答案 0 :(得分:1)
希望这可能有所帮助:
默认情况下,IIS使用来自Web.config文件的配置 虚拟目录映射到的物理目录 与该物理目录中的任何子目录一样。如果你不 想在子目录中使用Web.config文件,为其指定false 虚拟目录上的allowSubDirConfig属性。
如果这没有帮助,请回复我:)
答案 1 :(得分:1)
我通过转到项目的属性>修复了错误。网络>服务器和检查"覆盖应用程序根URL"。
答案 2 :(得分:0)
我认为您应修复所有网站的虚拟目录默认值的IIS设置,如下所示: 所有站点的虚拟目录默认值的IIS设置:
1 - 在“连接”窗格中,展开服务器名称,然后单击“站点”节点。 2-在服务器的“站点”窗格中,单击“操作”窗格中的“设置网站默认值...”。 3 - 在“网站默认设置”对话框中,指定所有网站的默认虚拟目录凭据,然后单击“确定”。
请参阅: http://www.iis.net/configreference/system.applicationhost/sites/virtualdirectorydefaults