.NET Core中Path.TryJoin优于Path.Combine有什么优势?

时间:2018-09-24 18:51:26

标签: c# path .net-core

我刚开始使用.NET Core 2.1,发现了Path.TryJoinPath.Join方法。该方法没有文档。

我运行了一些调用该方法的单元测试,它与Path.Combine没什么不同。

除了利用新的C#Span<T>数据类型来最大程度地减少字符串操作执行之外,还有其他好处吗?

1 个答案:

答案 0 :(得分:5)

您可以找到引入herePath.Join背后的理由。恕我直言,这似乎是为了性能和一些小的修正而简化交易,也找不到任何迹象表明Join可以像Path.Combine那样使用正确的分隔符创建跨平台有效的路径,但从所有方面考虑都是如此。

为了详细讨论,Path.Join解决的主要怪癖是最后一个有争议的论点,许多人不希望这样做(它虽然很小,但显然不是),可以在the worst gotcha in C# or .NET page上的示例中看到。

讨论中的总体思路是逐渐弃用Combine,而推荐使用Join

还请注意,PRPath.Join添加了字符串重载