Není to tak dlouho, co jsem kamarádovi Mišákovi říkal, že teď už jen vidět naživo Iné Kafe a Ska-P a můžu umřít. V té době byly obě kapely rozpadlé, takže takové plácnutí do větru nebo povzdech. Ale co se nestalo – Ska-P se dali znovu dohromady, natočili nové album a 10. února mají koncert v Praze. Jaké pak bylo mé překvapení, když jsem při silvestrovském brouzdání zjistil, že poslední lednový den odehrajou Iné Kafe druhý rozlučkový koncert v Praze – původní rozlučkový koncert byl totiž v Bratislavě a byl oznámen asi dva týdny předem, takže se tam z Česka moc lidí nedostalo. No vůbec jsem neváhal a hned jsem vyrazil koupit lístky.
Zobrazit celý příspěvek »
ASP.NET MVC není dodáváno jako jediná assembly System.Web.Mvc, ale spolu s ní dostáváme také System.Web.Abstractions a System.Web.Routing. Právě poslední z nich je zodpovědná za routing, což je důležitá součást ASP.NET MVC. Přitom ale tato assembly nereferencuje System.Web.Mvc, takže routing může být použit i pro klasické WebForms. O tom ale až někdy příště, teď bych se rád podíval na zoubek samotnému routingu jako takovému, což v zásadě není nic složitého.
Zobrazit celý příspěvek »
Každá akční metoda (action method), tedy metoda kontroleru, se vyznačuje tím, že vrací instanci potomka abstraktní třídy System.Web.Mvc.ActionResult (dále budu namespace System.Web.Mvc vypouštět). V praxi se většinou setkáváme s tím, že akční metoda končí „return View()„, return „RedirectToRoute(„Index“)“ nebo „return RedirectToAction(„Index“)„. Logicky tedy tyto metody musí vytvořit instanci nějaké třídy odděděné od ActionResult a tuto vrátit. Výše uvedené příklady ale nejsou jediné možnosti, jak můžeme něco z akční metody vrátit a na to bych se rád podíval v tomto článku.
Zobrazit celý příspěvek »
V předchozím článku o ASP.NET MVC jsem se zabýval předáváním dat při přesměrování, ale jak ukázaly dotazy na oficiálním fóru, lidé častou tápou v tom, jak správně dělat pro MVC naprosto zásadní věc – předat data z kontroleru do pohledu. Není to nic složitého, tak na to rychle mrkneme.
Zobrazit celý příspěvek »
Kamarád měl na mě zajímavý dotaz. Chtěl mít instanci IDictionary<TKey, TValue> a používat ji klasickým způsobem, ale protože Dictionary<TKey, TValue> defaultně používá na porovnání klíčů a počítání hashe instanci System.Collections.Generic.EqualityComparer<T>.Default, nedostával očekávané výsledky. Tento comparer totiž kouká na pole jako na jakýkoliv jiný referenční typ, takže v důsledku dojde pouze k porovnání referencí.
Zobrazit celý příspěvek »