Question

We have just set up a new Windows 2008 R2 server, when it was being set up (including IIS) the culture settings where set to English ("United States"). They where then changed to English ("United Kingdom") in line with the other servers. No other settings have been changed.

IIS settings have not been changed and no where in web services are cultures set, I've also checked machine.config and web.config - at all levels .Net globalisation is set to invariant on both the old and new servers.

However in the new 2008R2 server, Threading.Thread.CurrentThread.[CurrentUICulture/CurrentCulture].Nameis:

UI Culture = en-US (1033)
Culture = en-US (1033)

where as in the old servers (2008, not R2) it is:

UI Culture = en-US (1033)
Culture = en-GB (2057)  

We have some old legacy code that requires the default to be en-GB, and I need this achieved in the same way as the old servers, but can't figure out why this is defaulting to en-US instead of en-GB.

I've checked this answer https://stackoverflow.com/a/11135336/198048, but it doesn't help. (I realise I could force the new server to do this).

So why is culture defaulting to en-US?

Was it helpful?

Solution

This occurs because the servers reserved accounts (e.g. asp.net account) is still using the original culture (en-US) that windows was set up with.

Once you've changed the culture of your administrative account (and restarting I assume), you can change this in Regional and Language Options (from control panel) click on the Administrative Tab and click Copy to Reserved Accounts button.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top