首页 > 解决方案 > 上传的文件存放在哪里?

问题描述

我有一个 Asp.net 网络服务,我需要存储用户上传的文件。起初我想将它们存储在 App_Data 文件夹中,但是,我现在看到,当使用“在目标位置删除其他文件”选项从 Visual Studio 发布时,它会从 App_Data 文件夹中删除文件,尽管还检查了“排除文件App_Data 文件夹”。

(似乎有解决方法,但如果不是通过“发布”设计器,恐怕在某些时候文件被删除,要么是由于人为错误,要么是未来的某些 MS 更新会破坏它。 )

因此,我需要一些不在发布路径下但仍可访问(对 Web 应用程序,而不是对公众)的文件夹,并且不会被自动删除。

编辑

这是在网络托管环境中完成的,因此权限是有限的。

标签: c#asp.net.netiis

解决方案


只要您的 asp.net 应用程序有权写入它,您就可以选择任何路径中的任何文件夹(甚至在另一个驱动器中)。您甚至可以为此创建一个虚拟目录。

编辑

当您使用托管环境时,我不知道他们提供了哪些选项,因为有时它们会限制很多,但是在大多数情况下,当您在托管环境中创建新网站时,您会被要求提供路径like :\wwwroot您可能想将其更改为:( \somepath\wwwroot当然您应该先创建 somepath),并且您也可以访问 somepath。


推荐阅读