在开发ASP.NET应用程序时,我反复收到此错误:

  Cannot create/shadow copy 'XXXXX' when that file already exists

其中XXXXX是随机DLL.通常,DLL是Microsoft企业库中的DLL之一,但它有所不同.

这真的是随机的,非常令人沮丧.我会在几个小时内不出错,然后每10-20分钟出错一次.

我已经看到了几种解决方案.例如,this question.我已经try 使用"干净解决方案"选项,而且我还简单地重新启动了我的本地IIS.然而,它仍然以相同的随机但持久的频率发生.

我还看到很多人提到在配置文件中使用这个选项:

<hostingEnvironment shadowCopyBinAssemblies="false" />

然而,也有人提到它有问题,绝对不应该用于生产.

那么,我应该放弃try shadowCopyBinAssemblies选项吗?(请确保不要将此更改复制到其他环境.)我是唯一一个经常遇到这个问题的人吗?

Note:我正在使用Visual Studio 2008.

推荐答案

以下解决方法来自this now defunct connect issue:

  • <hostingEnvironment shadowCopyBinAssemblies="false" />添加到web.config文件的<system.web>部分.
  • 出现问题后重启卡西尼
  • If you get the error, stop the debugger, right click the solution and "clean solution". Hit F5 to restart debugger. This is really annoying as it has >50% fail rate for me and you would think that there should not be a manual option to CLEAN SOLUTION! This $1200 POS application should clean it for you automatically!
  • 加里·法尔(Gary Farr,http://blogs.claritycon.com/blogs/gary_farr/archive/2007/03/09/2888.aspx)提供了另一种可能对某些人更有吸引力的解决方法.
  • Add the following to your pre-build events:

    IF EXIST $(TargetPath).LOCKED (del $(TargetPath).LOCKED) ELSE (IF EXIST $(TargetPath) (move $(TargetPath) $(TargetPath).LOCKED))

  • 为我做这项工作的一个变通方法是使用"构建"而不是"构建解决方案"

  • 成功构建之后,我数到十,然后刷新我的网络表单.
  • I have found that by re-registering ASP.NET against IIS the problem "goes away" - I haven't had the problem since. You will need to run the following on the command line:
    C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i. This more than likely won't work for everyone - it's a complex problem.
  • 重新启动VS.
  • 清理解决方案时,发出了一些关于无法删除的文件的警告.这些文件设置了只读属性.将这些文件的属性设置为读/写后,问题就解决了.
  • 重新启动IIS

an old version of the page个项目中检索到EDIT:个项目(由Archive.org提供).

Asp.net相关问答推荐

强制从 /bin 而不是 GAC 加载程序集?

RNGCryptoServiceProvider - 随机数审核

将命令行参数传递给 ASP.NET Core 中的 Startup 类

如何从以特定名称开头的 appsettings 键中获取所有值并将其传递给任何数组?

无法加载文件或程序集 'System.Web.Mvc,版本 = 3.0.0.0,Elmah.MVC 问题

如何以编程方式获取会话 cookie 名称?

UseSqlServer 方法缺少 MVC 6

在使用网络服务器加载它们之前,如何编译 Asp.Net Aspx 页面?

排序下拉列表? - C#,ASP.NET

在不知道键名的情况下访问 JSON 对象的元素

如何设置默认页面 asp.net

在asp.net控件之间动态添加

如何避免 ASP.NET MVC 中的 HttpRequestValidationException 呈现导致异常的相同视图

如何在 asp.net 中更改 DataBinder.Eval 的日期格式?

调查 Web.Config 重复部分原因的步骤

C# - 将图像输出到响应输出流给出 GDI+ 错误

GridView 按代码隐藏列

asp.net core 2.0 - 值不能为空.参数名称:连接字符串

Application_Start 和 Application_OnStart 之间的区别

如何将代码中的变量调用到aspx页面