Community Tech-Days (CTD) is a Microsoft technology event organized by Microsoft and Local Microsoft User Groups to help developers and IT Prof. to catch up with the latest Microsoft technologies. Hyderabad Community Tech Days was held on 18th December at Microsoft IDC Building , Microsoft Campus, Hyderabad. Event was full of large number of technology enthusiasts and a number of regular event speakers from various technologies present for the event. Audience was awesome. Overall 350+ attended this event for both the Developer and IT Track and many more via live streaming. Live streaming was available only for developer track. I have presented a session on “ASP.NET 4.0 State Management Improvement - Deep Dive” .
Community Tech days is an event for all kind of audience, even few students was also there. Looking into that, I prepared my presentation in a different structure so that it helps to different kind of audience. I started with overview of state management, where I have explained,
- What is state management ?
- Why do we need state management ?
- What are the different selection criteria for state management ?
- Different types of state management
So, this was an quick warming up for audience with ASP.NET state management.
After this quick intro I talked about the changes of state management in ASP.NET 4.0 .
View State was the first topic that I have discussed first. I have discussed about the below points during my presentation.
- What is View State?
- How View State maintain data in client side?
- View State and ASP.NET Page life cycle.
- Page life cycle events for View State Save and Load
- using EnableViewState in ASP.NET
- Disadvantages of View State.
- ViewStateMode properties in ASP.NET 4.0
Along with above topics I have discussed about the different security aspect of View State. In demo I have explained what was earlier and what is new in View State ASP.NET 4.0. I have explained how we can have more control on view state using ViewStateMode. In demo I have also shown how we can see the View State data using View State Decoder.
I have an past article on ASP.NET 4.0 View State article, which you can use for further reference.
ViewState Control in ASP.NET 4.0
After View State, I moved to improvement of Session Management in ASP.NET 4.0 . Similarly like View State, I have first explained about basic of Session in ASP.NET.
- Basic of Session
- 120 Bit Session ID Identifier
- Different Types of Session
- Talked about Out process Session with SQL Server and State Server Session mode.
- Then introduced about Compression features of session data while using State Server and SQL Server Session mode.
During demo, I have explained couple of Important topics related with state server and SQL Server session mode.
- where I have explained using of aspnet_regsql command to create ASPState DB in SQL Server .
- Explained about “ASPStateTempSessions” and “ASPStateTempApplications” Tables in ASPState Database
- Use of "SessionItemShort (varbinary(7000), null)” and “SessionItemLong (image, null)” column in ASPStateTempSessions table.
- Configure web.config for SQL Server.
- After saving some Session Data in SQL Server, I have explained calculating Session Data Size in SQL Sever.
- Then, using CompressionEnabled=”true” and Impact of data Size in SQL Server.
Similarly, I have explained the same for State Sever,
- Start aspnet_state Service.
- Configure web.config for State Sever
- Using Performance Monitor Tool to get number of active session in State Server.
- Using VMMap Tool, memory uses of State Sever for both CompressionEnabled=”true” and CompressionEnabled=”Flase”
Then I have discussed about “Change Session Mode at Runtime” using SetSessionStateBehavior through a http module. In this session we have seen, how we can override the session state behavior at runtime based on Query string and also based on page name.
I demonstrated the same using a small application, where I have shown how based on some membership level of user we can enabled or disabled the session state.
Final topic I have discussed about Output Caching Provider. For Caching, I did the same as I did for View State and Session. First I have explained about ASP.NET Caching and how Output caching works.
After that, I talked about ASP.NET 4.0 Caching provider and using it how we can store cache data out of web server and discussed about the implementation.
In demo, I have shown, how we can store the output cache data in local storage file for page caching, fragment caching and using VarryByParam
Well, that was all about the session. After there I have answered couple of question that asked by audience. I asked the audience to go through the PDC 2009 Session Video By Stefan schackow on ASP.NET Core Runtime for more details on Caching improvement.
Finally, Thanks to All the speaker who came and presented the session and makes the success.
And, Thanks to Harish Ranganathan , Developer Evangelist, Microsoft for managing this big event.
And Finally, Great Thanks to Audience.
ASP.NET 4.0 State Management – CTD – Hyderabad by Abhijit Jana
You have done a very good job…. Abhi… Really appreciable… Keep up the good work…
Thanks Subhendu !
Nice Presentation Man!!
Cheers Man !!
It was good to know the great features of .NET 4.0 Session Management stuff..
Spl. Thanks for all of this
Thanks Ravi !
It is a great presentation and i liked your way of presentation with new points and the way of approch and you used good tools to get viewstate data and process.
but i am expected you may post your sample code you demonstarted in that presentation but i didn’t find that code.
please try to place your sample code which is demonstarted in the techdays and i am expecting it or other please mail to me
Thanks for your feedback.
Regarding code, I will surely update it soon. In my site hosting, I don’t have option to upload zip file, so i will uplaod it some where else and link it with here.
Will update you the same via emil once done !
PPT and Code Updated.
Thanks for the update and the presentation Abhijit! We really enjoyed the session.
Expecting many more sessions like this on cutting edge technologies…
Thanks Pranav ! Sure i will !!
Abhijit, it is an excellent Presentation. It would be great if you can share me the code to. Thanks.
Thanks. I am one the way to upload.
Done ! Thanks !
It was very nice presentation