我正在用 C# 编写代码库,并且在测试 PC 没有安装正确的 .NET 3.5 服务包来运行代码时遇到问题(与此处发生的问题相同:仅在我的机器上发生异常:找不到方法:WaitHandle.WaitOne(Int32) )。我想知道是否有一个静态代码分析工具可以在我的代码中运行,它会告诉我每个单独的模块(或程序集)所需的 .NET 的最低版本。
谢谢。
我正在用 C# 编写代码库,并且在测试 PC 没有安装正确的 .NET 3.5 服务包来运行代码时遇到问题(与此处发生的问题相同:仅在我的机器上发生异常:找不到方法:WaitHandle.WaitOne(Int32) )。我想知道是否有一个静态代码分析工具可以在我的代码中运行,它会告诉我每个单独的模块(或程序集)所需的 .NET 的最低版本。
谢谢。
项目属性-> 应用程序-> 目标框架。
我不知道有任何静态分析工具,但这是我发现的,基于 MSDN 文档和一些博客文章:
System.Data.Entity.dll
或使用 ClickOnce - .NET 3.5 SP1System.Data.Entity.dll
也没有使用 ClickOnce - .NET 3.5 RTM笔记:
我相信 .NET 3.5 SP1 是唯一增加了重要功能的服务包,因此它是唯一会导致MissingMethodException
问题的服务包。例如,这意味着 3.0 RTM、3.0 SP1 和 3.0 SP2 具有相同的公共 API。我还没有找到对此的明确确认,但“.NET 中的新功能”文档仅涵盖 2.0/3.5/3.5SP1/4.0,因此这是一个合乎逻辑的结论。
VS 2008 SP1 有一些关于“.NET Framework 3.5”的奇怪规则(仅在实际使用时才尝试以 SP1 为目标),但 VS2010 仅支持以 .NET 3.5 SP1 为目标。
资料来源: