【发布时间】:2016-04-11 16:16:01
【问题描述】:
我在这个帖子中找到了我的问题的部分答案:
Here on stackoverflow cannot change target framework...
在我的情况下,框架已成功转换为 4.5.2,并放置了一个带有 async 和 await 的方法,我确信它是框架 4.5 的一部分,该方法由引用库的 exe 成功运行。所以我可以假设这个库是真的使用框架 4.5.2 编译的。
但是,当在任何其他项目中引用该库时,该库在其属性中显示它是在框架 4.0 下编译的。当调试器加载程序集时,它会打印出它是在框架 4.0 下编译的... 那么谁是对的呢?我的框架 4.5 的代码执行方法或告诉库的字符串在框架 4.0 上?
如果我的安装中有任何 .targets 文件,我已经检查了我的能力,是的,在 msbuild-targets 临时文件夹下有两个,Microsoft.Common.targets 和 Microsoft.Csharp.targets,但我无法理解这些文件是否强制编译器使用框架 4.0。 主要是因为在这台机器上我是直接在visual studio中编译的。
我有几个使用 4.5.2 编译的组件库的解决方案,它们可以正常工作。所以我真的不知道如何确保我的库是在正确的框架下编译的,并且库在其属性和加载时显示正确的框架。
如果有人知道如何实现这一点, 提前谢谢你。
【问题讨论】: