Back to "Nog meer op ViewState ... nou, mijn huisdier peeve op ASP.NET echt ..."

This is a viewer only at the moment see the article on how this works.

To update the preview hit Ctrl-Alt-R (or ⌘-Alt-R on Mac) or Enter to refresh. The Save icon lets you save the markdown file to disk

This is a preview from the server running through my markdig pipeline

ASP.NET Imported mostlylucidcouk Security Web Development

Nog meer op ViewState ... nou, mijn huisdier peeve op ASP.NET echt ...

Sunday, 29 February 2004

Ik heb nagedacht over de ViewState. spullen Ik heb het al eerder gezegd. Het brengt eigenlijk iets naar boven dat ik het meest vervelend vind aan ASP.NET - en dat is geen politiek punt! Waarom kunnen 'gewone' gebruikers de bron voor ASP.NET niet zien, voor zover ik weet, geen equivalent van Rotor bestaat voor ASP.NET. Ik gok dat bepaalde MVP's kunnen toegang tot deze bron hoewel het Shared Source initiatief - de rest van ons moeten vertrouwen op dingen als Reflector om rond te snuffelen (beeld je in hoe nuttig het zou zijn om een debugger aan de ASP.NET bron te kunnen bevestigen!). Het argument dat ik denk dat hierop van toepassing zou kunnen zijn zou het oude 'als we toegang geven tot de bron die we niet kunnen veranderen' zijn of 'mensen zullen het zelf veranderen, waardoor we meer problemen krijgen' - umm, JSP en J2EE hebben volledige brontoegang, en altijd gehad - dit is gewoon niet gebeurd (hoewel ik JSP veel sneller heb geleerd omdat ik kon root over en begrijpen wat er gaande was). Dus, ervan uitgaande dat we nooit toegang kunnen krijgen tot ASP.NET bron, hoe krijgen we over de problemen lke ik heb zitten rommelen over met ViewState? Eenvoudige, fabriek methoden voor core framework items. Gelukkig ASP.NET 2.0 doet dit voor sommige items (vooral de nieuwe het moet worden gezegd) zoals Personalisatie en Lidmaatschap - waar u uw eigen provider klassen voor deze items kunt specificeren. Als dit alleen maar het geval was voor alle andere ASP.NET core items - bijvoorbeeld, Session state heeft een soortgelijk probleem, kunt u vasthouden aan de drie state stores die ASP.NET toestaat, SQL server, extreme state server van In Process - zou het echt zo moeilijk zijn geweest om de specificatie van een door de gebruiker gedefinieerde klasse voor dit ook toe te staan (als ASP.NET 2.0 dit al heeft en ik ben gewoon te dom om de referentie te vinden, laat het me weten!)? Dus, ASP.NET 2.0 - grote stap voorwaarts in het aanpassen van de gebruiker van core framework items - maar net iets verder zou fantastisch zijn!

Het is me net opgevallen. dit item op Jason Salas's weblog - een ViewState API...hmm...niet zeker over hoe praktisch een declarative sterke typesysteem zou zijn (voorbeeld 2); een site zal over het algemeen honderden items opslaan in ViewState - sterk typen elk zou een totale pijn. Voorbeeld 3 is vrij cool echter:

CHEESY VOORBEELD 3:

int homePhoneJenny = 8675309;

ViewState.Insert(...keyPhone..., homePhoneJenny,System.Int32);

Dat lijkt vrij nuttig!, dus ik kon doen ViewState.keyPhone om een Int32 terug te krijgen ... nog steeds lost het probleem dat we niet kunnen spelen met hoe ViewState werkt hoewel - dus ik kan niet specificeren dat ik wil Rijndael gebruiken als het encryptiemechanisme (3DES is Behoorlijk langzaam.!) of dat ik wil comprimeren de ViewState / zelfs op te slaan elders / wijzigen hoe controles kunnen toegang tot ViewState zonder al het spelen met overbelaste methoden of zelfs reflectie (schudder)...

logo

© 2026 Scott Galloway — Unlicense — All content and source code on this site is free to use, copy, modify, and sell.