W świecie ASP.NET MVC wiele ulepszeń ASP.NET zostało zawartych w samym frameworku. Głównym celem tego wzorca projektowego jest odizolowanie logiki biznesowej od interfejsu użytkownika, aby skupić się na lepszej konserwacji, poprawie testowalności i czystszej strukturze aplikacji.
ASP.NET MVC ma pewne możliwości, które sprawiają, że jest to najlepsza opcja do wyboru, jeśli potrzebujesz jednej lub więcej z następujących opcji:
• Wysoki poziom kontroli nad generowanym HTML : W przeciwieństwie do formularzy internetowych, widoki w ASP.NET MVC renderują HTML dokładnie tak, jak im każesz. Ostatnio formularze internetowe zostały ulepszone w tym obszarze, ale nadal nie mają poziomu kontroli, jaki ma MVC.
• Łatwiejsze testowanie jednostkowe : dzięki ASP.NET MVC bardzo łatwo jest śledzić wzorce testowe, takie jak programowanie testowe (TDD). Ze względu na złożony cykl życia zdarzeń w formularzach internetowych, oprócz szkieletu opartego na kontroli, TDD jest o wiele łatwiejsze dzięki MVC.
• Rozdzielenie obaw : Odnosi się to do wyraźnego oddzielenia wszystkich aspektów systemu. Ze względu na implementowany wzorzec aplikacja MVC jest podzielona na dyskretne i luźno powiązane części (model, widoki i kontrolery), co ułatwia utrzymanie.
Niektóre inne korzyści to:
• Sam wzorzec MVC ułatwia zarządzanie złożonością poprzez wyraźne rozdzielenie funkcjonalności aplikacji na trzy podstawowe części, model, widok i kontroler.
• Aplikacje internetowe ASP.NET MVC nie używają formularzy stanu ani formularzy opartych na serwerze. To sprawia, że środowisko MVC jest idealne dla programistów, którzy chcą mieć pełną kontrolę nad zachowaniem aplikacji. Stan wyświetlania może stać się bardzo duży, co stanowi problem dla urządzeń takich jak smartfony działające w wolnych sieciach (przesyłanie wszystkich tych informacji może być bardzo wolne). Na stronie formularzy internetowych możesz mieć tylko jedną na stronę. To dość poważne ograniczenie. W MVC nie ma takich ograniczeń - możesz mieć tyle elementów, ile chcesz.
• ASP.NET MVC zapewnia lepszą obsługę programowania opartego na testach (TDD).
• ASP.NET MVC działa dobrze w aplikacjach internetowych obsługiwanych przez duże zespoły programistów i projektantów stron internetowych, które potrzebują wysokiego stopnia kontroli nad HTML. Przetwarzanie żądań ASP.NET MVC