hello
>> is there a more streamlined approach to this in ASP.NET that ties in with the localization features.
I believe that will depend on the amount of data you are involved with. if you will just be localizing a few hundred name=value pairs for one or two languages, then .resx files may suffice. as far as I know, Microsoft's language glossaries ( the ones I think they use in their resource files ) contain a couple thousand entries for each language.
But the localization features in ASP.NET are somewhat limited to translating the user interface, not the data. I think Microsoft originally used these resources for building an OS which can have buttons, tabs, toolbar and menu labels and captions, etc. in different languages, not really for presenting data.
So if you will be dealing with a large amount of translated property names, descriptions, specifications, features, etc., in multiple languages, I believe storing the resources in a database would be more appropriate. And the suggestion on separating the resources into language-specific tables might not be a bad idea.
How to tie this up with the localization features such as resource expressions and typed object references is the big question. I haven't chanced upon any Microsoft documentation on how to go about this.
Anyway, in a multi-lingual site I am currently helping to build for a client, we opted for the language-specific tables and just did away with the localization features in ASP.NET. we manage the content resources just as we manage any other databases. Once a user selects the language and locale, we simply work with data from the appropriate tables.