为什么 TextInfo.ToTitleCase 在字母全部为大写的字符串上无法正常工作?

Hab*_*ğuz 5 c# string title-case cultureinfo

你能看一下我的样品吗?

在此输入图像描述

该结果由以下示例产生:

var str = @"VIENNA IS A VERY BEAUTIFUL CAPITAL CITY.";
var title = new CultureInfo("en-US", false).TextInfo.ToTitleCase(str.ToLower());
MessageBox.Show(title);
Run Code Online (Sandbox Code Playgroud)

因为该程序的语言是土耳其语。我想提请您注意虚线字母 I。但我们都知道正确的方法应该是这样的:

维也纳是一个非常美丽的首都。

我怎样才能得到真实的结果?

Jen*_*ens 5

string.ToLower有一个需要 a 的过载CultureInfo。(关联

尝试类似的东西

var culture = new CultureInfo("en-US", false);
var title = culture.TextInfo.ToTitleCase(str.ToLower(culture));
Run Code Online (Sandbox Code Playgroud)