.net core / standard string.ToLower()没有culture参数

时间:2017-05-24 10:48:45

标签: c# .net .net-core .net-standard

在.net fx我能做到

myString.ToLower(frenchCulture);

但是当查看.net核心或.net标准时,不再有可以传递的文化参数。只有string.ToLower()string.ToLowerInvariant()

文化是否应该被省略?但是,当字符串的文化不是当前的文化时,不应该存在问题吗?

任何暗示这背后的原因是什么?

当我想到一个不变的文化时,我可以使用ToLowerInvariant()

但是,在一种不是当前文化的文化中我必须使用string.ToLower()的用例呢?

1 个答案:

答案 0 :(得分:11)

看起来能力就在那里,只是以更迂回的方式。而不是:

string output = input.ToLower(culture);

使用

string output = culture.TextInfo.ToLower(input);

另请注意,netstandard2.0中已添加过载。 implementation基本上就是上面的代码。