gpt4 book ai didi

.net-4.0 - 可移植 F# 库引用 .NET 4.5(但不是 4.0)

转载 作者:行者123 更新时间:2023-12-02 03:34:20 24 4
gpt4 key购买 nike

我正在尝试创建可移植的 F# 库,但它需要以 .NET 4.0 为目标(公司政策是所有可移植的库都需要与 Windows XP 兼容)。

当我创建(Visual Studio 2013)新项目时,有一个选项“可移植库(旧版)”,其描述为“一个用于创建可在 .NET Framework 4.0 上运行的 F# 库 (.dll) 的项目 及更高版本、Windows 应用商店和 Silverlight 5”。

问题是,实际创建项目时。当我转到项目属性时,“目标框架”设置为“.NET 可移植子集(.NET 框架 4.5、Silverlight 5、Windows 8)”。

我尝试将 F# 运行时版本从 3.1 更改为 3.0,但没有任何改变。 “3.0”和“3.1”是唯一的选择。 “2.0”怎么了?我错过了什么吗?

编辑:Grzegorz 似乎是对的。我创建了这个显示“.NET 4.5”的 F# PCL,并从 .NET 4.0 C# 应用程序中引用了它。没有报告任何问题。

然后,可以肯定的是,我也从 3.5 应用程序中引用了它并且......在编译期间也没有报告任何问题,但它在运行时崩溃了。所以可以肯定的是,我在 XP 上运行了“可能是 4.0”的应用程序并且它工作了,这可能被解释为:“是的,F# PCL 不依赖于 4.5,即使它这么说”。

让它成为一个答案,这样我就可以打勾了。

最佳答案

“可移植库(旧版)”的模板文件将 TargetFrameworkVersion 硬编码为 v4.0。如果您将使用此模板创建一个项目,它实际上将以 4.0 版本为目标。

可能是 UI 中存在一个错误,它一直将目标框架显示为 4.5,而实际上它使用的是以前的框架。

严格来说,这个问题与legacy Portable Library 有关。非遗留版本似乎在强制框架为 4.5 版本时正常工作。

更新:我向 Visual F# Tools 团队提交了一个关于此的问题: https://visualfsharp.codeplex.com/workitem/95

关于.net-4.0 - 可移植 F# 库引用 .NET 4.5(但不是 4.0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24649958/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com