Answers:
在.NET 1.1之前的版本中,此文件夹为ASP.NET提供了对验证控件和其他功能的JavaScript支持。如果您没有运行.NET 1.1或更早版本的站点,则应安全删除它。我将首先对其重命名以确保它不会引起任何问题。
除了其他人所说的,它通常是由aspnet_regiis工具创建的,可以通过Windows Update / AddRemove Windows组件/ IIS之类的东西(重新)运行。因此,有时即使您删除了它,它也可能会随机返回。可能有一种方法可以停止这种行为,但是我还没有发现(也许将应用程序版本更改为.NET 2确实可以做到)。
因此,除非您使用的是.NET 1.0 / 1.1的某些功能(验证,智能导航等),否则可以毫无问题地删除它,如果它回来了,请不要感到惊讶!
aspnet_client是“必须通过HTTP服务但必须基于每个服务器而不是每个应用程序安装的资源”的文件夹。
aspnet_client的某些用途包括为以下资源存储资源(例如JavaScript,图像):
将来可能/将进一步使用此文件夹。不用说,由于它包含“应用程序正确运行所必需的”但“不应由应用程序部署”的内容,因此它对于开发人员和系统管理员而言都是噩梦。
似乎文件夹内容的“原型”在C:\ inetpub \ wwwroot \中,并且可以合理地假设,如果任何给定的IIS网站缺少/ aspnet_client资源,则IIS将尝试做正确的事情... ...作为最后的手段...在网站根文件夹中创建一个物理文件夹,然后将文件复制到该目录中。看来,至少在调用“ ASPNET_regiis / c”给定服务器时IIS会执行此操作-这可能在某些关键时刻自动发生……例如,将.NET Framework更新应用于具有IIS角色的服务器时。
处理aspnet_client目录的策略包括:*指定映射到C:\ inetpub \ wwwroot的虚拟目录,以希望IIS放弃创建物理目录。*如果确定站点不正确,则不时删除该物理目录。不需要它,而这确实使您感到困扰*如果您缺少文件夹,并且自己需要它,那么请忽略aspnet_client *自己运行“ ASPNET_regiis / c”
可能最重要的是,作为开发人员,您应该清楚地了解并记录应用程序对aspnet_client目录的依赖关系,并确保安装过程中具有相关的说明以确保该目录存在。但是,你应该不会打扰到实际提供的目录中打包的Web应用程序或网站的一部分-你怎么可能为.NET Framework的服务器会看到在你的应用程序生命周期的每个版本做到这一点?
我将在稍后返回一些链接:
它还具有某些图标和脚本,即使在1.1版之后的版本中,水晶报表也需要这些图标和脚本才能正常运行
C:\inetpub\wwwroot\aspnet_client\system_web\4_0_30319\crystalreportviewers13
不知道这是否是正确的做还是不做的事情,但我只是复制从根全aspnet_client文件夹到我的Ripplestone例如住在目录中。