Jon*_*eet 46
我有一个.NET 4.0 dll项目,由.NET 2.0项目调用.有没有办法调和框架中的差异?
不是这样,没有..NET 4 CLR可以加载.NET 2程序集(通常 - 混合模式程序集,IIRC有一些例外),但反之亦然.
您要么必须将.NET 2项目升级到.NET 4,要么将.NET 4项目降级到.NET 3.5(或更早版本).
我收到了同样的错误消息.我在给
C:\ WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe"C:\ MyService\MyService.exe"
代替
C:\ WINDOWS\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe"C:\ MyService\MyService.exe"
小智 8
如果您已经尝试过此页面上的所有其他逻辑解决方案,请仔细检查一下.在我的app.config中,我有一个旧框架的引用.
<startup>
<supportedRuntime version="v2.0.50727"/>
</startup>
Run Code Online (Sandbox Code Playgroud)
本来应该
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
Run Code Online (Sandbox Code Playgroud)
项目选项卡正确显示了v4.0,但app.config没有提交到我们的repo进行更改.为了解决这个问题,我将框架更改为其他内容并再次返回4.0,这更新了我的app.config文件.
由于只有一个版本的运行时可以加载到进程中(尽管正如其他人提到的那样,向后加载 - 4.0加载2.0 - 没关系),你有几个选择:
您要么必须将.NET 2项目升级到.NET 4,要么将.NET 4项目降级到.NET 3.5(或更早版本).
你如何升级.net版本?我不知道在哪里指明什么.请帮忙.
编辑:我自己找到了答案.选择项目,右键单击并选择"属性页".在那里你可以选择框架版本.或选择项目,然后单击Shift + F4