English 中文(简体)
Visual Studio 中的 App_Data 文件夹有什么用途?
原标题:
  • 时间:2009-02-09 16:30:28
  •  标签:

在Visual Studio中创建新的ASP.NET应用程序时,会自动创建一些文件和文件夹。其中一个文件夹称为App_Data

同时,通过选择菜单选项构建->发布发布网站时,可用复选框包括来自App_Data文件夹的文件

我这么想是不是正确的:把文件放在这个文件夹及其子文件夹中,它们将无法通过网络访问?例如,是否可以将只打算供应用程序代码使用的资源放在那个文件夹中?

"App_Data文件夹的真正预期使用方式是什么?"

编辑:

感谢您提供的所有答案。从目前收到的答案中,我主要对提到的两个问题感到感兴趣:

  1. App_Data is essentially a storage point for file-based data store
  2. It should not be viewable by the web and is a place for the web app to store and read data from

Would someone be able specify how the "not viewable by the web" is ensured? Can I rely on that fact when performing standard deployment, or do I need to check some IIS settings on the server as well.

如果我有一组PDF文件,我希望只能从应用程序中访问,应该使用App_Data文件夹,还是应该创建一个单独的文件夹并手动设置IIS以确保它不能被Web访问? 在这种情况下,我应该使用App_Data文件夹,因为它是ASP.NET应用程序中存储数据文件的推荐位置,并且可通过应用程序中的代码轻松访问。如果您创建了单独的文件夹,请确保将其设置为不允许Web访问,以便保护您的文件免于潜在的安全风险。

最佳回答

App_Data基本上是基于文件的数据存储的存储点(相对于SQL服务器数据库存储等)。一些简单的网站例如使用它用于存储XML等内容,通常是因为数据库的托管费用昂贵。

问题回答

在 IIS 中,将机器突出显示,双击“请求过滤”,打开“隐藏段”选项卡。 “App_Data”在那里列为受限文件夹。是的,我知道这个线程非常旧,但这仍然适用。

App_data的预期用途是存储应用程序数据供Web进程访问。它不应该被Web所查看,是Web应用程序用来存储和读取数据的地方。

这是放置嵌入式数据库的地方,例如SQL Server Express、Access或SQLite。

App_Data文件夹是一个文件夹,你的ASP.net工作进程有文件系统的权限,但并没有通过Web服务器发布。

例如,我们使用它来更新本地CSV的联系我们表单。如果首选的电子邮件方法失败或需要对数据源进行任何查询,则可以使用App_Data文件。

这不是最理想的,但它是一个很好的备选。

从MSDN关于ASP.NET Web项目文件夹结构的文档中:

You can keep your Web project s files in any folder structure that is convenient for your application. To make it easier to work with your application, ASP.NET reserves certain file and folder names that you can use for specific types of content.

App_Data contains application data files including .mdf database files, XML files, and other data store files. The App_Data folder is used by ASP.NET to store an application s local database, such as the database for maintaining membership and role information. For more information, see Introduction to Membership and Understanding Role Management.

主要意图是将您的应用程序数据库文件存储。

非常抱歉,這將不會在網路上預設為可訪問。

我们将其用作上传的CSV文件的临时存储区域。上传后,一个ajax方法会处理并删除该文件。

App_Data的预期使用是存储与数据库相关的文件。通常是SQL Server Express .mdf文件。





相关问题
热门标签