If you have a multi-language site, you have probably already worked with .resx files. Resx files are resource files that can contain strings, images, sounds... pretty much anything. However, in ASP.NET (at least in our typical scenarios), resource files mainly contain strings to be translated in multiple languages. Those needing a refresher course on ASP.NET localization should take a peek at this article: ASP.NET Localization. Let us take a typical ASP.NET application as an example. When you generate a resource file for a file named Default.aspx, VS.NET generates a new folder named App_LocalResources (if it doesn't exist) and it creates a new file named Default.aspx.resx in this folder.
This option will only be visible in the design view of an aspx or ascx file.
Default.aspx.resx will contain all strings that can be localized from Default.aspx. Default.aspx.resx is the default resource file for Default.aspx. It will contain the default language strings, in our case English. Should you need to offer the same application in more than one language, you will need to create locale-specific resource files with a similar filename. For example, Default.aspx.fr-CA.resx would be a resource file for Canadian French. The logic to retrieve a string from the appropriate resource file is built into the .NET framework (it depends on the current thread's culture).
Those who have built a dynamic web site supporting multiple languages know that managing resx files is a burden, especially when the application changes.
For more read this
Source : ResXEditor.zip (1.01 mb)
thanks to
Related Technologies