Я тестировал это на обоих .Net 4.0 и .Net 4.0 CP, тот же результат.CultureInfo.Region работает в окне Immediate, а не в коде
Эта линия: global::System.Globalization.CultureInfo.GetCultureInfo("en-us").Region
Если я ввожу его в Visual Studio (C#), то Visual Studio говорит мне "Регион" не является действительным. Если я нахожу ту же строку в окне Immediate во время точки останова, она полностью действительна и возвращает данные, как ожидалось. И из того, что я вижу, «Регион» не находится в MSDN documentation.
Очевидно, что по разным причинам два разных объекта.
Почему? Что тут происходит? Почему реальность несовместима? Я боюсь!
(серьезно, я вижу поведение я не понимаю, так что я хотел бы, чтобы это понять.)
Непосредственные возвращается окно:
global::System.Globalization.CultureInfo.GetCultureInfo("en-us").Region {US} CurrencyEnglishName: "US Dollar" CurrencyNativeName: "US Dollar" CurrencySymbol: "$" DisplayName: "United States" EnglishName: "United States" GeoId: 244 IsMetric: false ISOCurrencySymbol: "USD" Name: "US" NativeName: "United States" ThreeLetterISORegionName: "USA" ThreeLetterWindowsRegionName: "USA" TwoLetterISORegionName: "US"
В то время как Visual Studio идут все красные на меня:
Просто небольшая Sidenote: Я не только ищет другой/правильный способ сделать это, я хотел бы знать, почему Немедленное и код отличается. –
Возможно, компилятор прав. Кажется, что окно Imm добавляет некоторые умения. –