我在 .Net 4.0 和 .Net 4.0 CP 上对此进行了测试,结果相同。
这一行:
global::System.Globalization.CultureInfo.GetCultureInfo("en-us").Region
如果我在 Visual Studio (C#) 中键入它,那么 Visual Studio 会告诉我“区域”无效。如果我在断点期间在立即窗口中键入同一行,则它完全有效并按预期返回数据。从我可以看到“区域”不在MSDN 文档中。
由于某种原因,显然是两个不同的对象。
为什么?这里发生了什么事?为什么现实不一致?我害怕!
(更严重的是,我看到我不理解的行为,所以我想理解它。)
立即窗口返回:
global::System.Globalization.CultureInfo.GetCultureInfo("en-us").Region
{我们}
货币英文名称:“US Dollar”
CurrencyNativeName:“美元”
货币符号:“$”
显示名称:“美国”
英文名称:“美国”
GeoId:244
IsMetric: 假
ISOCurrencySymbol:“美元”
名称:“美国”
NativeName:“美国”
三字母ISORegionName:“美国”
ThreeLetterWindowsRegionName:“美国”
TwoLetterISORegionName:“美国”
当 Visual Studio 对我全红时:
