Nedávno jsem zde zveřejnil článek o svých ukázkových aplikacích pro ASP.NET Core.
Jednou z nich je AskMe a jde v podstatě o jednouživatelskou kopii služby Ask.fm. Tato služba umožňuje anonymní (nebo pseudo-anonymní) pokládání otázek (můžete se zeptat i mne).
Nyní je aplikace k dispozici ve dvou variantách:
- Altairis.AskMe.Web.RazorPages je původní aplikace napsaná v Razor Pages, jenom přejmenovaná.
- Altairis.AskMe.Web.Mvc je přesně stejná aplikace, ovšem napsaná v ASP.NET MVC.
Obě dvě aplikace vypadají z pohledu uživatele úplně stejně a úplně stejně se i chovají, včetně stejných URL a podobně. Využívají i společnou vrstvu pro přístup k datům, vytvořenou pomocí Entity Frameworku Core, projekt Altairis.AskMe.Data.
Můžete tedy porovnat rozdíly a naopak společné části, které mají oba dva přístupy - MVC i MVVM (Razor Pages). Z tohoto důvodu oba webové projekty obsahují spoustu podobného a zkopírovaného kódu. V normálním případě by bylo správné onen sdílený kód vyčlenit do samostatného projektu a neduplikovat ho. Zde to záměrně nedělám, aby bylo možné porovnat obě řešení.
Ukázkové aplikace najdete na mém GitHubu.