We have several large products we'd like to integrate with a consistent localization strategy.

We're already doing the right things from a code point of view - ie. strings in resource files.

I'm looking for something that will organize localized strings in a database, and generate the appropriate resource files (ie. .RESX files for .NET, .js files, etc.) during the build process. Ideally, it would also be able to read in the files as well (detecting strings that have been added/removed).

The database would allow us to reuse translations in different products, switch to different technologies, and track what translations are missing in each release.

Has anyone found a good product that handles these requirements? What have others done to manage localized assets?