From reading your question, I see nothing that ASP.NET does not automatically offer. You can configure ASP.NET (whether WebForms or MVC) to use the accept-language
request header and set the appropriate UICulture (which will affect the assembly of ResourceManager satellites) and Culture (which will affect language-specific formatting and parsing such as dates and numbers )
To configure the application to use the accept-language
list to install both UICulture and Culture for each request (according to this MSDN page ), configure your network. config as follows:
<globalization uiCulture="auto" culture="auto" />
There is also an equivalent configuration setting per page.
Then, according to the Return Resources process, if your application includes assembling satellites for the appropriate culture (or, otherwise, its parent neutral culture), this will be used by the resource manager. If not, then your default resources will be used (in English if this is your base language).
source share