ASP.Net无法创建/卷影副本(ASP.Net cannot create/shadow copy

2019-06-23 11:42发布

我开发ASP.Net应用程序时反复出现此错误:

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

其中xxxxx是一个随机的DLL。 通常情况下,DLL是从微软的企业库中的dll的一个,但它变化。

这是真正随机的,这是非常令人沮丧。 我会去个小时没有收到错误,然后得到这个错误每次10-20分钟。

我已经看到了几种解决方案。 举例来说, 这一问题 。 我已经使用清理解决方案选项尝试过了,我也只是重新启动我的本地IIS。 但是,它仍然发生在相同的随机,但持续的频率。

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

<hostingEnvironment shadowCopyBinAssemblies="false" />

然而,其他人所说的它是有问题的,它绝对不应在生产中使用。

所以,我应该干脆放弃,并尝试shadowCopyBinAssemblies选项? (并确保不复制此更改其他环境。)我是唯一一个谁,往往得到这个问题?

注:我使用Visual Studio 2008。

Answer 1:

以下的解决方法来自这个现在已经不存在连接问题 :

  • 添加<hostingEnvironment shadowCopyBinAssemblies="false" /><system.web> web.config文件的部分。
  • 重新启动卡西尼当你的问题
  • 如果你得到错误,停止调试器,右键单击解决方案,“干净的解决方案”。 按F5重新启动调试器。 这实在是烦人,因为它具有> 50%的失败率,我和你可能会认为根本不应该是干净的解决方案手动选择! 这$ 1200 POS应用程序会自动清理你!
  • 这里还有一个解决办法,可能是更有吸引力一些,加里·法尔(礼貌http://blogs.claritycon.com/blogs/gary_farr/archive/2007/03/09/2888.aspx )。
  • 以下内容添加到您的预生成事件:

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

  • 这确实对我的工作是不是使用“打造”的解决方法使用“生成解决方案”

  • 创建成功后,我数到十,然后我刷新我的网络表单。
  • 我发现,通过重新注册ASP.NET对IIS的问题“消失” - 因为我没有问题。 您需要在命令行运行在以下方面:
    C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i 。 这更可能将不适合每一个人 - 这是一个复杂的问题。
  • 重启VS.
  • 当清洁液,几个警告发出有关可能不会被删除的文件。 这些文件有其只读属性集。 设置这些文件的属性为读/写后,问题得到解决。
  • 重新启动IIS

编辑:从检索到的项目的旧版本的页面 (archive.org提供)。



Answer 2:

某处等待10-30秒,命中刷新之间。 出于某种原因,这总是对我的作品。



Answer 3:

只需重新启动Visual Studio,为我工作。



Answer 4:

打开你的项目属性,打开Web选项卡,并确保启用编辑并继续选项未被选中。



Answer 5:

在我的情况只是iisreset工作。



Answer 6:

我跟我们创建了一个导入的DLL工作时经常得到这个问题。

试图阻止正在发生的事情失败了,甚至推出了不同的问题,但每当它发生,我只想做一个重建的解决方案,问题就会立即消失为构建。

此外,我还没有看到,因为上的Visual Studio 2002。2008年的工作并没有这个问题,我知道的问题,同样没有2005年你使用的是旧VS?



Answer 7:

GO的设计模式,然后点击右键,在浏览器中点击视图,这个问题会自动消失阿尼尔马丹



Answer 8:

添加在预生成事件命令行,基本上解除Visual Studio中的DLL这些行:

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

重新编译和你无法复制DLL错误不会发生。



Answer 9:

如果您使用实体框架:

错误信息:“ 当文件已存在无法创建/卷影副本‘’”

解决方案:“ 等待几秒钟,然后刷新页面。”

欲了解更多信息,请访问: 高级实体框架6种情景的MVC 5 Web应用程序(12 12)



Answer 10:

我得到了同样的问题,通过将该代码为我工作一个web.config。

<hostingEnvironment shadowCopyBinAssemblies="false" />


Answer 11:

你只需刷新(F5)页面。



Answer 12:

清理并重新构建它。 它帮我常常为我工作



文章来源: ASP.Net cannot create/shadow copy