På en site jag sitter och optimerar prestanda vet jag att dataset lagras i Viewstate. Börjar bli orolig när du säger att du har optimerat genom att lägga DataSet i ViewState... berätta gärna, blir nyfiken.. Best practice är att lägga så lite som möjligt i ViewState, finns andra alternativ och det skulle vara intresant vad du behöver optimera för att ge förslag. Ett sätt att se storlek på ViewState, är View Source i IE.. Google: Har faktiskt prövat det verktyget men jag lyckas inte få upp något mer än bara html-koden. Kan för visso se viewstaten där men den är dock lite svår att tyda :-)... Skrev nog lite slarvigt. Tanken är att jag skall ta bort onödiga DataSet för att göra viewstaten mindre. Ta bort onödiga datasets? Jo kontrollerna på sidan har EnableViewstate=true. Men jag ser att det även finns dataset som lagras i sidors Viewstate. Det är dessa dataset jag skulle vilja analysera innehållet (och framför allt storleken av).Verktyg för att se vad som finns i Viewstate och Session
Behöver något tipps på verktyg för att analysera vad och hur mycket som lagras i Viewstate. Ett liknande verktyg vore även kanon för att se Sessions-data då planer finns att lagra en del information där.Sv: Verktyg för att se vad som finns i Viewstate och Session
Regel nummer #1, lägg så lite som möjlig i Session... Kan finnas andra alternativ.. outputcache, Cache objektet etc. Här kan du läsa lite: "Sessions are the achilles heel of a web application" <urt:http://weblogs.asp.net/fredriknormen/archive/2008/10/24/sessions-are-the-achilles-heel-of-a-web-application.aspx>
Finns verktyg för att se på Sessions storlek, om du vill hacka lite själv och lägga så ta en titt på denna artikel: http://www.codeproject.com/KB/session/exploresessionandcache.aspxGoogle:A & Tips- : Verktyg för att se vad som finns i Viewstate och Session
Sökterm ".net viewstate analyzer"
Ger dig följande förslag:
Träff 1: david hayden skriver lite om det på sin blog, och tackar scott guthrie (med länk)
Träff 2: Scott guthries blog med information om verktyget... med direktlänk till det bra verktyget
;-)
....
Tada: http://lab.aspitalia.com/26/ViewStateAnalyzer200.aspx#eng
// Hoppas detta verktyg passar för dina behov.
///////////////////
Tips:
Beroende på vad du ska med datat till , om det är "personligt" eller går att dela mellan olika användare mm...
Så finns det fler alternativ,
sessionstate och applicationstate (per session eller delat för hela applikationen)
Annat alternativ är att cach:a returdatat från*/ eller *inne i metoden som hämtat datat
(*baserat på din arkitektur)
Data som dessutom kan invalideras m.h.a t ex eventmodellen ( någon har lagt till data i tabell/tabeller som datat i datasetet kommer ifrån) så slipper du gammal data när data förändrats.
// Lycka till :)Sv: Google:A & Tips- : Verktyg för att se vad som finns i Viewstate och Session
Har även testat http://www.pluralsight.com/toolcontent/ViewStateDecoder21.zip men den lyckas inte tyda någon viewstate på vår site (varken med eller utan gzip).Sv:Verktyg för att se vad som finns i Viewstate och Session
Lagra dataset i viewstaten vs cache key based dependency
Jag förstår inte riktigt.
Vad är kopplingen mellan dataset och viewstaten?
Kontrollerna på sidan (om de inte har den avstängd) ökar på viewstate:n
i annat fall ökar de bara på den med sin controlstate (viktigare data)
Annars är det delar som du själv lagt ned i viewstate:n som ökar på storleken....
Har du lagt ned 1-flera dataset i viewstaten... och att du fortfarande vill ha det så, men du kanske hämtat några extra som kan vara onödiga.. eller hur menar du?
a) Lagra dataset i viewstaten
> känns som helt fel aproach
välj istället ngt av tidigare nämnda sätt:
sessionstate, applicationstate eller cache istället (beroende på hur datat ska delas)
Bra sida att få överblick på de olika sätten har du på http://www.codeproject.com/KB/aspnet/ExploringCaching.aspx#kd
där jag länkat direkt in i cache med key dependency ( som jag tipsade om i tidigare svar)
[MS How to]
"HOW TO: Implement Key-Based Dependencies for Data Caching in ASP.NET by Using Visual C# .NET"
* http://support.microsoft.com/kb/308147
"How to implement key-based dependencies for data caching in ASP.NET by using Visual Basic .NET"
* http://support.microsoft.com/kb/312358
[cache callback]
*http://blogs.msdn.com/tmarq/archive/2008/07/22/asp-net-cache-can-notify-you-before-an-entry-is-removed.aspx
*http://aspalliance.com/1705_A_New_Approach_to_HttpRuntimeCache_Management.allSv: Lagra dataset i viewstaten vs cache key based dependency
Skall kolla upp articklarna du tipsar om. Jag kanske svamlar en massa i nattmössan, :-), men jag återkommer då jag fått mer klarhet i detta.