views:

173

answers:

1

I'm having some strange problems with a site using .net 2.0 and IIS 6. The site uses resx files so it's localized in many languages. In some of those files we make changes to the resx and recompile, and the changes don't show up on the site. Ever. It's primarily in one language (Arabic) that this happens, but occasionally other languages as well.

My first thought was that the changes were not drastic enough for visual studio to build them in, but after publishing I can verify the changes in the new resx files. Also I can go on the server and physically confirm the changes in the resx, and open the webpage and the changes are not showing. I thought there may be a server at work caching it, but it's the same from multiple internet connections.

What I've already tried

  • I have restarted IIS, both the individual sites and the whole service.
  • I have restarted the server.
  • I have recycled the application pool.
  • I have cleared out all the temp files in the .net folder.
  • I have inserted headers into the site setting it to no-cache and verified it
  • I have inserted meta tags to indicate no-cache
  • I have deleted the resx, accessed the site and got the error, then reuploaded it.
  • I have drastically changed the size of the resx file in hopes it would trigger something.
  • I have drastically changed the amount of text in the field, none of which shows up.
  • I have triple checked that I'm asking for the right fields in the resx.
  • I have verified my webhost is not using any caching service.

For some reason the changes just aren't taking. Any ideas an help would be greatly appreciated, this one has me and other knowledgeable folks here completely stumped.

+2  A: 
  1. Double check the security permissions for the changed files and the temp files. If the web server's account cannot read them, then your changes won't show up.

  2. Ensure you have an entry for the "neutral" culture resource. If you do not have an entry in your main resx file, then the compiler will not emit code to translate that particular Label/Button, etc.

  3. Also forcing the site to recompile is a good idea (but you have that up there). Sometimes what I do after a resource file change is to open the aspx page and just add a space to the end, save and close. Voila it will be recompiled.

Jennifer Zouak
I never thought about permissions, and I changed permissions on everything, though were showing up correctly, and when I recompiled the changes showed up. Thank you for the tip!!
Jeremy Morgan