title: ASP.Net Localization (Satellite assemblies vs DB with custom ResourceProvider)
body: <p>I am looking for the best solution to make it easy to add new languages to an asp.net website without deploying/building the existing code base.</p>
  
  <p>From what I have researched, it seems that you can compile resource files on the fly into Satellite assemblies but I am uncertain how to make the application use these DLL's once generated?</p>
  
  <p>The other option I have seen is to store the translations in the Database, and write a custom ResourceProvider so that the built-in localization methods can be used, whilst abstracting the actual implementation (in this case a database).</p>
  
  <p>Either way, the front end for this site will be the same (meta:resourcekey for the controls etc).</p>
  
  <p>But I am struggling on deciding which approach will be the easiest to upkeep. For example, does publishing a new Satellite Assembly restart the Application Pool or does everything tick over nicely?</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>The translations will be provided by a 3rd party API so human maintenance quality is not important. I thought I would add this due to the answers received.  </p>