Resource Files:
Use resx format. Translation tools will not be able to process the format that you suggested, as it contains several languages ββin one file. A regular translation tool will take the source file and generate the corresponding file for each language after the translation. I would avoid the format that you offered at all costs.
If you want to use XML, use one file for each language. Also, in whatever format you choose, be sure to include contextual comments for each segment to help translators.
Server access
Use resx and save time to define a layer
Client Access
The server-side script generated is simpler and more consistent with side-side access, in my opinion.
Culture switching mechanism
I assume that you are asking about logic, not about the user interface. The most common method is to configure the user's browser language. If the language is set to a language that does not exist in your application, return to the default language. You also want to set a cookie with a choice of users (in case they change the language manually), so that next time they will be offered their choice of language.
source share