从Mac OSX CoCoa应用程序引用.NET Framework 4.5类库项目有什么危害吗?
我听说建议将.NET Standard用于共享库代码。但是,.NET Framework 4.5中似乎有更多的API可用于.NET Standard 1.1(即System.IO.Directory.Create)。
我正在编写Windows WPF应用程序的OSx版本。理想情况下,我希望在共享库中共享业务逻辑代码,而不是复制。
Windows项目必须保留在.NET 4.5上,所以如果要使用.NET标准路由 - 它必须是1.1,但是许多库是不兼容的。
请参阅:https://docs.microsoft.com/en-us/dotnet/standard/net-standard
我似乎能够添加对.NET Framework 4.5类库的引用并使用许多库,并且想知道这里有什么风险(如果有的话)。
答案 0 :(得分:0)
从Mac OSX CoCoa应用程序引用.NET Framework 4.5类库项目有什么危害吗?
由于.NET Framework 4.5不能在Mac OSX上运行,我会说是,有危害。
Windows项目必须保留在.NET 4.5上,所以如果要使用.NET标准路由 - 它必须是1.1,但是许多库是不兼容的。
如果这些“不兼容的库”是第三方开源项目,那么最好的办法是通过提供升级到.NET Standard来帮助它们移动。
请注意,.NET Standard 1.1缺少多个API,许多库需要添加更多NuGet包以添加缺少的API(请参阅https://apisof.net/)或定位高于1.1的版本以便与之兼容.NET标准。在后一种情况下,您可以将库多目标定位到.NET Framework 4.5以及您可以使用的最低版.NET Standard。如果将两个库放在同一个NuGet包中,这几乎是无缝的。