我如何知道我需要构建的.net框架的版本

时间:2012-08-28 20:17:44

标签: c# .net dll build

我在C#中有一堆解决方案,我已被提交过。服务器上有生产代码,我在本地开发机器上有它的版本。我进行了代码更改,并构建了dll。当我尝试将dll复制到服务器时,它给出了我的错误:

"Could not load file or assembly 'myfile.dll' or one of its dependencies. 
This assembly is built by a runtime newer than the currently loaded runtime 
and cannot be loaded."

其中一个问题是我用于构建ORM,数据和业务逻辑的项目不在服务器上,而是在我的本地,我可以使用它们来构建dll,但它没有帮助当我无法分辨服务器正在使用什么时。你在哪里找到它运行的版本以及如何构建匹配?我知道这是我自己的无知,不知道.net框架是如何工作的,不同的版本,如何为正确的版本构建(32位与64位也是一个关注点?)并让事情发挥作用。我看了一下,但似乎无法解释这一点。

3 个答案:

答案 0 :(得分:1)

32或64位不应该打扰你。要查找框架版本,您必须在 IIS

中查找网站或虚拟目录

我这里没有Windows Server,但它是这样的:

  1. 打开IIS管理工具
  2. 找到您的网站或虚拟目录,右键单击并转到属性
  3. 应该有一个名为.Net(或类似名称)的标签
  4. 在此选项卡中,有一个组合,其中包含绑定到IIS的可用运行时版本。当前是你正在使用的那个。
  5. 这些步骤适用于IIS 6.对于IIS 7,它们大致相同,但它们不会将其称为“属性”窗口,而是“高级内容”。

    我很抱歉没有正确的细节,但你能找到它。

答案 1 :(得分:0)

在vs2k10中更改项目的目标框架:打开项目属性 - >应用程序选项卡 - >目标框架(具有可用版本的组合框)

检查/更改服务器上的框架版本(适用于IIS 7.0版本):

  1. 打开IIS管理器。
  2. 单击“应用程序池”节点。
  3. 找到您的网站/虚拟目录使用的相应应用程序池(默认情况下,有一个“DefaultAppPool”应用程序池)。
  4. 右键单击应用程序池,然后选择“高级设置”
  5. 应该有“.NET Framework Version”

答案 2 :(得分:-2)

通常,最佳解决方案是检查实际管理服务器的人员。他们应该能够很容易地找到你。