我有一个针对图书馆4.5.2。当我从.csproj定位中引用该库时4.5.1,它错误地指出:C:\ Program Files(x86)\ MSBuild \ 14.0 \ bin \ Microsoft.Common.CurrentVersion.targets(1820,5):警告MSB3274:主要引用为“ XXX,Version = 1.0.0.0,Culture = neutral,processorArchitecture = MSIL ”无法解析,因为它是针对“ .NETFramework,Version = v4.5.2”框架构建的。这是当前目标框架“ .NETFramework,Version = v4.5.1”的更高版本。按我的理解,4.5.1要4.5.2在就地升级。通过就地升级,我了解到,如果我将其升级.csproj到4.5.2目标部署机并在目标部署机仍能升级时4.5.1,一切都应该可以正常工作,除非使用特定功能的升级二进制文件在Windows4.5.2中不可用4.5.1。到目前为止我是正确的吗?按照类似的逻辑,如果我4.5.2从项目定位中引用库定位4.5.1,那行不通吗?
1 回答
汪汪一只猫
TA贡献1898条经验 获得超8个赞
仅仅因为它是就地升级,并不意味着您可以引用向前的版本。最终,您要引用的软件包是4.5.2,这意味着它可以利用仅在4.5.2中存在的功能。因此,从4.5.1项目中定位它是不安全的,因为说“我瞄准4.5.1”的全部要点是,如果有人拥有4.5.1,则它应该运行。哪个:不会。
因此:如果要针对当前针对4.5.2的软件包,则有两种选择:
将项目更改为目标4.5.2
查看是否可以将您要引用的软件包调整为目标4.5.1(代替4.5.2或作为其补充)
- 1 回答
- 0 关注
- 237 浏览
添加回答
举报
0/150
提交
取消