views:

38

answers:

1

I have an asp.net web application which i want have multilingual support now.For some reasons,the management is not ready to use satellite assemblies or resource file.They want to have it table driven.so i created tables to store the text for each part of the page.I dont want to make a call to db every time the page control loads.Ex: if my page has 10 labels,i dont want to call my db 10 times to fetch the appropriate label text.Instead i want to load the labels only once and store it in memory and access from it thereafter.

what are the best approach to do this ? Where should i store it ? In the Application variable ? or the Application cache ? What data structure is best for handling this ? A list of custom LabelText class ? Oh Boy, I am confused

Any thoughts ? Appreciate your support

+1  A: 

I'd were you, i'd really really push for management to pay for a license of the WestWind WebToolkit. It contains a database driven resource manager that lets you edit everything resource-related in your app. You can even export the data to resource files if you're so inclined.

I've managed to have our current project use it, and it's been a real time saver.

Even if you don't want to/can't buy it, Rick Strahl based an article about this very subject, which you can find here and which is very interesting.


edit: for the record, i'm not affiliated to Rick Strahl in any way, except being a satisfied customer :)

samy