I am developing a website for a client (ASP.NET, T-SQL). It is a data-entry website allowing many of their users to login and manipulate records in the same database.
There are instructions (basically a list of string) throughout the form, telling the users what to do for each section; these instructions are themselves present in the database.
On each login, I store these instructions in the Session[] object per authenticated user. The instructions are identical for everyone.
I’ve looked at a solution which suggested storing a common session identifier in the database and then querying it to re-use that particular session but this seems very hacky. What is a best-practices solution to accomplish this? Is there a ‘common’ object available to all users?
Firstly, does it matter at this point? Yes, it’s bad practice and inefficent, but if you’re storing 20Kb of strings in memory and have a maximum of 100 users, that’s 2,000Kb of data. Hardly a lot of memory “wasted”. Even at 200Kb of strings, that’s 20,000Kb of data. Again, not a lot. Is it worth your time, and the client waiting for you to solve it, right now?
If you decide it is then you could:
Applicationobject or a static class so that they’re retrieved once and used many times.