các MSDN nói
Văn hóa là một tài sản của các chủ đề thực hiện. Thuộc tính chỉ đọc này tương đương với việc lấy đối tượng CultureInfo được trả về bởi thuộc tính Thread.CurrentCulture. Khi một chủ đề được bắt đầu, văn hóa của nó ban đầu được xác định bằng cách gọi hàm Windows GetUserDefaultLocaleName.
Nói cách khác, nó dựa trên các chủ đề, phù thủy có một bối cảnh ... trong bối cảnh ASP.NET, mà xuất phát từ Locale sử dụng trong trình duyệt khách hàng đầu tiên nếu sử dụng Server Variables
hoặc Cài đặt hệ thống trên mọi thứ khác.
Dưới bối cảnh Web này, bạn có thể lấy nó bằng cách sử dụng phương pháp Server.Variables
trên HTTP_ACCEPT_LANGUAGE
và bạn sẽ nhận được một cái gì đó như:
en-US,en;q=0.8,pt-PT;q=0.6,pt;q=0.4
Witch khẳng định rằng trình duyệt khách hàng có 3 ngôn ngữ thiết lập, nơi đầu tiên là en-US
.
Tất cả mọi thứ từ System.Globalization
xuất phát từ Hệ thống các định nghĩa giống như hình ảnh dưới đây cho thấy:
mã trên là:
<p>
<pre>System.Globalization.CultureInfo.CurrentCulture</pre>
is @System.Globalization.CultureInfo.CurrentCulture.EnglishName
</p>
Không có vấn đề gì trình duyệt đang sử dụng, các định nghĩa cho System.Globalization
sẽ luôn xuất phát từ định nghĩa của hệ điều hành
Cảm ơn Balexandre, đây có vẻ là thông tin tốt. Nhưng tôi chỉ kiểm tra thiết lập miền địa phương của trình duyệt của tôi và en-US của nó (tôi đang sử dụng firefox và tôi đã kiểm tra thiết lập general.useragent.locale trong about: config) cũng như các thiết lập datetime và các thiết lập vùng của tôi được đặt thành en-US. Nhưng tôi vẫn nhận được en-IN khi kiểm tra System.Globalization.CultureInfo.CurrentCulture. Bạn có bất kỳ ý tưởng mà tôi sai? – TechnicalSmile
đã thêm hình ảnh để hiểu rõ hơn ... – balexandre