【问题标题】:Common Language Runtime detected an invalid program?公共语言运行时检测到无效程序?
【发布时间】:2015-09-23 21:09:42
【问题描述】:

我的程序中不断重复此错误。

我尝试了以下方法:

  1. 重启 Visual Studio
  2. 清理和重建解决方案

当我逐行浏览代码时,它不会让我对方法调用完全困惑:

GenerateWorksheetPart1Content(WorksheetPart worksheetPart1)

我不明白为什么它停在那里。该参数此时不为空。什么可能导致错误?

【问题讨论】:

  • 检查添加的引用和外部库。

标签: c# .net visual-studio-2012 command-line-interface


【解决方案1】:

MSDN - InvalidProgramException

摘录:

The exception that is thrown when a program contains invalid Microsoft intermediate language (MSIL) or metadata. Generally this indicates a bug in the compiler that generated the program.

当您单步执行代码时会发生这种情况,因为当您的方法被调用时,它正在被 JIT 编译。如果JITer编译无效,此时会抛出该异常。

【讨论】:

  • 在处理 VB.NET 代码而不是 C# 时,是我自己还是经常收到此错误?对我来说,VB.NET JIT 看起来很垃圾......还需要很长时间才能更改一行。
【解决方案2】:

尝试关注-

1) 从C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files删除临时的asp.net文件
2) 重新编译程序集并更新相应的引用

【讨论】:

  • 我的机器上不存在该文件夹。该位置唯一的文件夹是“CONFIG”和“en”,无论如何,我正在运行 ASP.NET Core 2.2
猜你喜欢
  • 2018-02-17
  • 2017-05-05
  • 2011-05-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-08
  • 2022-01-25
相关资源
最近更新 更多