Recently, I will give the company a set of report query systems! It is ASP.NET. I used it before, but I didn't care about it this time! Everyone knows that ASP.NET is programmed to develop two ways: ASP's noodle mode, write all logic controls with code on one, write into a bunch; use the MVC mode to make code / page binding. I have always been mixed in two ways, because I am looking for the best model developed by the DOTNET team, in my consciousness, DOTNET is more difficult to control in large-scale team development. Compared with Java it doesn't seem to be very good to MVC mode. I believe that friends with Structs will have the same feeling with me. ASP.NET gives us a new way, it can realize events in Application, as if each page element you face can be like the Button, Listbox in the Application of C / S, with its Caption / Text, ItemIndex gets the value you want. But it is more difficult to do a Coding to work with the US worker. Because if you want to use an event trigger a task to complete a task, you need to use RunatServer in ASP.NET, and we have to mention a unique attribute in ASP.NET: enableViewState. Microsoft's explanation is "Request to maintain view status for all pages", I think there is a mistake here. It is a Chinese syntax error. The correct explanation is "For all requests for all requests for the current page." . Please don't think I will sell here! This is the entry point I want to start talk. If you enableViewState = true during the procedure, then your question is coming! First of all, all members in System.Web.ui.htmlControls are not very well possible to make code binding to .cs or .vb! Even if you join, when you transfer the completed work over the work of the art, you must especially solemnly state the state-of-life statement. "Don't make the cut to paste!" If the other party accidentally did this action, unfortunate things Go to your head! Please check your code carefully, there may be elements to declare loss or declaration. A larger disaster is still behind. For example, you use HTMLTABLE and RunatServer in the system, your request is that the amount of data in htmlTable will change and decrease, you will find that if the new data set is greater than the old data collection, the new data collection cannot be correct. Format Displayed in WebForm, new data is overwritten by the old data when the old data is incomplete. What is my solution for this problem? It is enableviewstate = false, abandoning Object.Property this way, and uses Request ["" in the program, although it can be solved, but it is a very weird than my feelings. After all, this way of writing violates the quality and consistency of the system, causing difficult reading in the degree of code part. It is a bit confusing above this pass, I think I mean, it is basically clear! I hope everyone will discuss the large-scale ASP.NET, how should the big team going to control the team division, if you go to the version control (please don't simply talk to me with VSS or CVS!), I hope to discuss in-depth discussion. How to use EnableViewState more efficiently.