IT Framework backendowy

ASP.NET MVC

Znany też jako:ASP.NET MVC 5ASP.NET Framework MVC

Definicja #

ASP.NET MVC to framework Microsoftu do tworzenia aplikacji webowych z wyraźnym podziałem na warstwy Model-View-Controller. Pierwotna wersja (ASP.NET MVC 1-5) działała na .NET Framework (Windows-only) i stanowiła odpowiedź na rosnącą popularność frameworków takich jak Ruby on Rails.

Wzorzec MVC w ASP.NET MVC:

  • Model — klasy C# reprezentujące dane i logikę biznesową; ViewModels do przekazywania danych do widoków
  • View — szablony Razor (.cshtml) generujące HTML po stronie serwera; @Html.Helper(), Partial Views, Layouts
  • Controller — klasy dziedziczące po Controller; metody akcji zwracające ActionResult (View, Redirect, JSON)

Kluczowe cechy ASP.NET MVC 5:

  • Razor View Engine — składnia @model, @foreach, @Html.BeginForm() do renderowania HTML
  • Routing — konwencjonalny routing {controller}/{action}/{id} lub attribute routing
  • Model Binding — automatyczne mapowanie parametrów HTTP na parametry metod kontrolera
  • FiltersAuthorizeAttribute, HandleErrorAttribute, custom action filters
  • Bundling and Minification — System.Web.Optimization do łączenia zasobów CSS/JS

Relacja z ASP.NET Core MVC: ASP.NET Core 1.0+ zawiera własną implementację MVC (ASP.NET Core MVC) — podobne koncepcje, ale przepisane od zera. ASP.NET MVC 5 na .NET Framework jest technologią legacy i nie otrzymuje nowych funkcji (tylko poprawki bezpieczeństwa).

Zastosowania #

  • Utrzymanie i rozwój istniejących aplikacji na .NET Framework — wiele korporacyjnych systemów napisano w ASP.NET MVC 5 i wymagają wsparcia
  • Aplikacje webowe z server-side rendering — generowanie HTML po stronie serwera (Razor Views) dla systemów wewnętrznych
  • Migracja do ASP.NET Core — znajomość ASP.NET MVC ułatwia przejście na ASP.NET Core MVC (podobne koncepcje)
  • Intranety i systemy HR/ERP na .NET Framework — środowiska, gdzie migracja na .NET Core jest nieekonomiczna w krótkim terminie

Ścieżka nauki #

ASP.NET MVC 5 jest technologią legacy — nowe projekty nie powinny jej używać. Warto jednak znać ją dla pracy z systemami utrzymaniowymi.

Zacznij od (dla nowych deweloperów uczących się .NET):

  • Zamiast ASP.NET MVC 5 ucz się od razu ASP.NET Core MVC — nowoczesna wieloplatformowa wersja
  • Jeśli pracujesz z legacy kodem: zrozum strukturę projektu MVC 5, routing konwencjonalny, cykl życia requesta
  • Razor składnia: @model, @foreach, Html.ActionLink(), partial views

Dla deweloperów migrujących do .NET Core:

  • Porównaj ASP.NET MVC 5 z ASP.NET Core MVC — koncepcje podobne, różni się DI (wbudowany w Core), middleware pipeline, konfiguracja
  • Narzędzie migracji: .NET Upgrade Assistant (Microsoft) pomaga migrować projekty .NET Framework do .NET Core
  • Kluczowe różnice: Global.asaxProgram.cs, Web.configappsettings.json, System.Web → nowy namespace

FAQ #

Czy ASP.NET MVC i ASP.NET Core MVC to to samo?
Nie. ASP.NET MVC 5 działa na .NET Framework (Windows-only) i jest technologią legacy. ASP.NET Core MVC to nowoczesna wersja działająca na .NET Core/.NET 5+ (wieloplatformowa, open-source). Koncepcje (kontrolery, widoki Razor, routing) są podobne, ale implementacja jest inna — nie są kompatybilne binarnie.
Czy warto uczyć się ASP.NET MVC 5 w 2026 roku?
Tylko jeśli pracujesz z istniejącym systemem na .NET Framework. Do nowych projektów zawsze wybieraj ASP.NET Core. Rynek pracy dla .NET Framework MVC 5 kurczy się — oferty dotyczą głównie utrzymania legacy systemów. Inwestuj czas w ASP.NET Core, który ma aktywny rozwój i rosnące zapotrzebowanie.
Jak przenieść projekt z ASP.NET MVC 5 na ASP.NET Core?
Microsoft oferuje narzędzie .NET Upgrade Assistant, które automatyzuje część migracji. Kluczowe zmiany: Global.asax → Program.cs, Web.config → appsettings.json, System.Web.Mvc → Microsoft.AspNetCore.Mvc, nowy system DI, middleware pipeline zamiast HttpModules. Migracja dużych projektów jest złożona i często wykonywana etapowo.
Czym jest WebForms w porównaniu do ASP.NET MVC?
ASP.NET WebForms to starsza technologia Microsoft (2002) z modelem event-driven podobnym do WinForms — kontrolki serwerowe, ViewState, code-behind. ASP.NET MVC (2009) zastąpił WebForms podejściem opartym na wzorcu MVC bez stanu (stateless), z pełną kontrolą nad HTML. Obie technologie działają na .NET Framework; żadna nie jest rekomendowana dla nowych projektów.
Ostatnia aktualizacja:

Powiązane hasła

Technologie i biblioteki, które najczęściej pojawiają się razem z ASP.NET MVC w ogłoszeniach.

Cały słownik IT

Przeglądaj słownik IT alfabetycznie

Wybierz literę, aby zobaczyć wszystkie hasła zaczynające się od niej.