I am planning for a project that deals with all kinds of tax for multiple companies and users. I'll be using C# (winforms), layered architecture (UI, DAL, BLL and WebService) and SQL Server.
Application will be used by multiple users, where a single user will deal with hundreds (maximum thousands) records at a time, which will have to be loaded, updated and set.
I want your help in deciding if I have to load my data into objects on program's start-up or something, or go with loading data on demand. I'm not sure how to decide this, and in case data should be pre-loaded which is the best approach to use since data will have to be saved back to DB.
I know I don't have any code to post here yet, forgive me but I'm still in the planning phase so I'm asking a theoretical question.