提问人:greenoldman 提问时间:11/3/2010 更新时间:4/25/2019 访问量:47508
由于“试图访问未加载的AppDomain”,无法在VS中编译解决方案--如何确定它?
Cannot compile solution in VS due "Attempted to access an unloaded AppDomain" -- how to pin it down?
问:
我在 VS (2008) 中有一个 C#/ASP.Net 解决方案,其中包含多个项目。当我尝试编译它时,我只收到一个错误:
尝试访问已卸载的 AppDomain
没有行代码,没有项目名称,什么都没有。只是这样的错误。
我怎样才能确定这个错误--即原因,或者更好的是--我怎样才能解决它并继续编译?
先谢谢你。
答:
有很多可能性:
尝试重置 Visual Studio 的 设置。
或检查所有 dll 引用。
- 检查所有命名空间 在您的应用程序中使用,请执行 它们存在吗?
评论
我在 Visual Studio 2012 中遇到了同样的情况 - 但仅限于 UNC 共享上托管的网站上。我的解决方案(当它发生时)是卸载 Web 项目并再次重新加载它。然后又工作了一段时间。
我记得的问题是,托管的 UNC 共享(或尝试访问它的工作站)运行的是 x86 版本的 Windows,它不允许许多开放的网络连接。
根据我的经验,这些问题在真正的 x64 环境中会消失。
干杯。
关闭 Visual Studio 并重新打开它。然后清理 Temp 文件夹。
为此,请按 + 并键入并单击确定,然后删除所有内容。WindowsR%Temp%
评论
这意味着,WebConfig/AppConfig 中的某些内容不兼容并且无法加载。
例如。 İ如果您发布了项目,请选中app_data/发布配置文件,将其删除。
如果此错误随 VS 一起出现,请按照下列步骤操作
- 只需重新启动 VS。
- 再次启动 VS
- 清洁溶液 (Build> Clean Solution)
- 再次重新生成项目
如果 IIS 附带此错误
- 在 IIS 管理器中重新启动(回收)IIS 应用程序池,重新启动检查后再次运行解决方案!
如果 .sln 文件有冲突,请先检查它,然后将其删除并更新 svn 文件夹并重新生成解决方案。
重新生成解决方案
评论
以下是我为摆脱此类错误而遵循的步骤-
- 按 Windows+R ,写入 %Temp% 并按回车键。现在,从目录中删除所有临时文件。
- 重新启动 Visual Studio。
- 从 Visual Studio 列表项的“解决方案资源管理器”中清理项目解决方案。
- 重新生成项目并运行。 它应该可以预期地工作。
也有可能您的单元测试启动了一个线程,但没有关闭它。确保您的线程在完成之前全部关闭。 验证所有单元测试是否正确运行和通过可能是个好主意。
从系统托盘中退出本地 Web 服务器 (IIS express) 并从临时文件夹中删除 asp.net 临时文件,然后尝试清理、重建和运行您的应用程序
评论