views:

44

answers:

3

I am trying to get the users preferred language. I see all kinds of articles on how to set it, but they assume that the user is telling it which language to select (like in a dropdownlist).

In Firefox under Tools > Options > Content > Languages > Choose you can select which languages you prefer and choose their order. I want to be able to access that list, or at least the preferred language in the C# codebehind. How do I go about this? Is this possible?

Everything I have tried always returns en-US, no matter whats in the list.

A: 

I think the browser sends this in the Accept-Language header field, as documented by W3c. However, I am not sure how to access that from ASP.net.

Frank
+4  A: 

I believe what your after is this

Request.UserLanguages

From the documentation

"Gets a sorted string array of client languages preferences.

Sir Psycho
Awesome thanks.
Blankasaurus
A: 
Dim userLocale
userLocale=Request.ServerVariables("HTTP_ACCEPT_LANGUAGE")

Dim languages
languages = Split(userLocale, ",", -1)
NinjaCat