Static variables in ASPX pages == VERY BAD.
The classes that live in your web application are loaded into the context of the ASP.NET worker process (wp). Each time the wp receives a request for a page, it creates an instance of that page class. The class definition is loaded into the wp. As long as the wp is "alive" on the server (which it will be for quite some time) that class definition is present. Your static variables live within the class definition of each class, therefore the dataset you are using is not only taking of useful memory even while the server is idle, but more destructively it's visible to ALL USERS who see that same page. The dataset is shared.
This might be acceptable practice depending on what the data is. However, you state that you are making changes to it. This says to me that it's not something you want to have shared between users.
If it is data that is ok to share between users, I'd recommend using the web cache instead of a static page variable. When you need it, retrieve it from the cache.
-
Peter