Často kladená otázka je: pod jakým účtem běží ASP.NET? Protože je často kladena, je i často zodpovídána, leč bohužel ne vždy správně a protože se odpověď s časem (a verzemi IIS) mění, odpověď může být neaktuální. Pojďme se podívat na vývoj a současný stav.
Rubrika IT
V tiché poctě před pár dny zemřelému Miloslavu Švandrlíkovi se musíme nejprve zeptat: "A co si predstavujete pod takým slovom 'správné', Kefalín?" Takže si hned na začátku definujme, že chceme mít možnost přio výskytu HTTP chyby (typicky 404 a 500) poslat uživateli náš vlastní obsah, ovšem se správným stavovým kódem. To v ASP.NET a IIS sice lze zařídit, ale způsobem dost netriviálním.
Docela užitečnou funkcionalitou na řadě webů je možnost zapamatovat si hodnotu zadanou do textboxu v cookie, aby ji uživatel nemusel vyplňovat pořád znovu. Typické použití je například v komentářích (i na tomto webu). Psát ji na každém webu zvlášť je ovšem poněkud otravné, chtělo by to nějaké univerzální řešení. Zajímavou cestou je použití Control Extenderů, známých spíše ve světě AJAXu.
Píšu webovou aplikaci, která po uživateli chce zadat IP adresu. Samozřejmě si chci pomocí validátoru ověřit, zda jsou zadaná data formálně správná, tedy že uživatel zadal validní IP adresu. Jak na to? Ponaučení první: používejte standardní infrastrukturu. Ponaučení druhé: regulární výrazy nejsou všemocné.
V předchozích článcích této série jsem popsal implementaci ViewState a ControlState v aktuální verzi ASP.NET, tedy 3.5 SP1. V tomto, posledním, článku se podíváme do budoucnosti: na novinky, které nás čekají ve verzi 4.0. Mnou popisovaný stav se týká verze Beta 1 a je dobré ho tedy brát s rezervou – zde prezentované informace se mohou ještě změnit.
V předchozích dílech tohoto seriálu jsme se podívali na ViewState a ControlState. Nyní se budeme zabývat konfigurací celého systému a ochranou obsahu.
V předchozím článku jsme se podívali na technologii ViewState a na to, jak se dá využívat ve vlastních ovládacích prvcích. A také jsem psal, že se na ni nemůžeme spolehnout, protože ji programátor může vypnout, na úrovni aplikace, stránky nebo konkrétního prvku. Pokud přesto chceme uchovávat nějaké údaje napříč postbacky, musíme použít technologii ControlState.
Snad žádná jiná technologie v ASP.NET nezpůsobila tolik zlé krve jako právě ViewState. Hromady na první pohled zbytečných a nesmyslných Base64 kódovaných dat ve skrytém formulážovém poli __VIEWSTATE jsou to první, na co si obvykle odpůrci ASP.NET Web Forms vzpomenou, často s uštěpačnou poznámkou v duchu "nojo, co byste chtěli od Microsoftu". Jako u každé technologie ovšem i zde platí, že nejsou technologie dobré a špatné, ale pouze vhodně a nevhodně použité.
Při přípravě článku, který se podrobně zabývá technologií ViewState sjem zjistil, že vám již více než rok dlužím jeden díl seriálu o (bez)stavovém HTTP. Ba dokonce možná díl nejdůležitější, totiž poslední, shrnující a hodnotící. Nuže, tady je.
Templatovatelné prvky jsou způsob, jak lze v ASP.NET vytvářet server controls, které mohou v markupu obsahovat další controls. Základní postup pro jejich vytvoření je vcelku jednoduchý, ale pokud chcete, aby váš control byl stejně komfortní jako ty vestavěné, dá to trochu víc práce.