Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

3
  • I was thinking of using a SQL watcher to update the dictionaries, I believe that uses the SQL Broker. I know what an enum is for. In this case they are still constants, with a active flag. I didn't want to have to recompile and redeploy to update added entries. Or restart the app if possible. 99% of the time this wouldn't be needed. Commented Jan 29, 2013 at 13:53
  • Sounds like a great idea, but again enums are for fixed consts that won't be added to or removed from or changed in any way, lookup tables always grow and change. Dictionaries are meant to grow and change. Commented Jan 29, 2013 at 14:17
  • @nportelli anytime you have any important cache like this, another good approach is to always (if you have authorization-controlled interfaces already a part of the system like most websites have an admin area) create a simple refresh-the-caches interface. Lazy loaded dictionaries instead of read-only is another approach that is acceptable. Again the important thing is to start thinking dictionaries, not enums and suddenly all these approaches come to mind, which is the sign that dictionaries are what you actually want. You know you want an enum only when these issues don't even come to mind. Commented Jan 29, 2013 at 15:41