什么是在Visual Studio中使用的App_Data文件夹?

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

另外,通过select菜单选项“生成” – Build->Publish网站时,可以使用checkboxInclude files from the App_Data folder

我正确地认为放在这个文件和它的子文件夹的文件不会通过networking访问吗? 例如,是否可以安全地放入我只打算由应用程序代码使用的文件夹资源?

App_Data文件夹的实际用途是什么?

编辑:

谢谢你所有的答案。 从迄今收到的答复中,我主要提到两点:

  1. App_Data本质上是基于文件的数据存储的存储点
  2. 它不应该可以通过网页浏览,并且是Web应用程序存储和读取数据的地方

会有人能够指定如何确保“不可见的networking”? 执行标准部署时,我可以依靠这个事实吗?还是需要检查服务器上的一些IIS设置。

在我有一套pdf文件的情况下,我想只能从应用程序访问。 将App_Data文件夹是正确的地方使用,或者我应该创build一个单独的文件夹并手动设置IIS,以确保它不能通过networking访问?

App_Data本质上是基于文件的数据存储的存储点(例如,相对于SQL Server数据库存储)。 例如,一些简单的网站将其用于存储为XML的内容,通常在数据库托pipe费用昂贵的情况下。

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

App_data的预期用途是将Web进程的应用程序数据存储到接口中。 它不应该可以通过网页浏览,并且是Web应用程序存储和读取数据的地方。

这是放置embedded式数据库的地方,如Sql Server Express,Access或SQLite。

App_Data文件夹是一个文件夹,您的asp.net工作进程也具有文件系统权限,但不通过Web服务器发布。

例如,我们使用它来更新联系我们表单的本地CSV。 如果电子邮件的首选方法失败或需要查询任何数据源,那么App_Data文件就在那里。

这并不理想,但这是一个很好的回落。

我们使用它作为上传的csv文件的临时存储区域。 一旦上传,ajax方法处理并删除文件。

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

您可以将Web项目的文件保存在任何适合您的应用程序的文件夹结构中。 为了使您的应用程序更易于使用,ASP.NET保留了可用于特定types内容的某些文件和文件夹名称。

App_Data包含应用程序数据文件,包括.mdf数据库文件,XML文件和其他数据存储文件。 ASP.NET使用App_Data文件夹来存储应用程序的本地数据库,例如用于维护成员资格和angular色信息的数据库。 有关更多信息,请参阅成员介绍和了解angular色pipe理。

有关更多信息,请参阅成员介绍和了解angular色pipe理 。

主要目的是保存你的应用程序的数据库文件。

没有这个默认情况下不能从网上访问。

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