Visual Studio 2012编辑网站时自动生成31个app_offline.htm问题求助
问题排查与解决方案
针对Visual Studio 2012频繁无响应、自动生成31个app_offline.htm文件的问题,结合你的场景(无发布操作、使用用户控件),可以从以下方向逐步排查:
1. 统一用户控件的引用路径
你当前使用的相对路径(../../app_includes/findtext.ascx)可能导致VS设计器反复解析文件路径,触发不必要的文件系统操作。建议修改为应用根路径写法:
- 注册控件时替换路径为:
<%@ Register TagPrefix="search" TagName="findtext" Src="~/app_includes/findtext.ascx" %> - 确保所有页面的控件引用都使用
~/开头的根路径,避免不同层级页面的相对路径歧义,减少VS后台解析的负担。
2. 关闭VS的后台自动检测/编译功能
VS2012的部分后台功能可能对老ASP.NET站点过度检测,导致资源占用过高:
- 关闭文件自动刷新:工具→选项→项目和解决方案→Web项目,取消勾选**“检测文件更改时自动刷新”**
- 禁用预编译自动选项:打开项目属性→生成,取消勾选**“预编译站点”**(若存在)
- 关闭后台智能感知更新:工具→选项→文本编辑器→HTML→高级,取消勾选**“在后台更新智能感知”**
3. 清理VS与ASP.NET的缓存文件
缓存堆积可能导致VS异常:
- 删除VS组件缓存:前往
%LOCALAPPDATA%\Microsoft\VisualStudio\11.0\ComponentModelCache,删除该目录下所有文件后重启VS - 清理临时ASP.NET文件:删除
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files和C:\Windows\Microsoft.NET\Framework\v4.8.xxxx\Temporary ASP.NET Files中对应站点的文件夹 - 删除项目的
.vs隐藏文件夹:每个站点根目录下的.vs文件夹是VS的本地缓存,删除后重新打开项目
4. 排查扩展冲突
第三方扩展可能干扰VS的正常运行:
- 以安全模式启动VS:运行
devenv.exe /safemode,若问题消失,说明是扩展导致的,逐个卸载扩展排查 - 先禁用所有非默认扩展,再逐步启用,定位到冲突的扩展
5. 定位app_offline生成的触发源
若以上步骤无效,需要精准定位操作触发点:
- 查看VS活动日志:前往
%APPDATA%\Microsoft\VisualStudio\11.0\ActivityLog.xml,搜索app_offline关键词,查看相关操作记录 - 使用Process Monitor工具监控
app_offline.htm的创建过程,确认是devenv.exe还是其他进程触发的文件生成,进一步排查原因
内容的提问来源于stack exchange,提问作者Pater Temporis
相关产品推荐
相关产品推荐

