ASP.NET MVC Урок за начинаещи: Какво е, Archiтекстура
Какво е ASP.NET MVC?
ASP.NET MVC е рамка за уеб разработка с отворен код от Microsoft който осигурява архитектура на контролер за изглед на модел. ASP.net MVC предлага алтернатива на ASP.net уеб формуляри за изграждане на уеб приложения. Той е част от платформата .Net за изграждане, внедряване и стартиране на уеб приложения. Можете да разработите уеб приложения и уебсайт с помощта на HTML, CSS, jQuery, JavascriptИ др
Научете MVC с този ASP.NET MVC урок, който обхваща всички основни концепции на MVC за начинаещи:
Защо ASP.net MVC?
Въпреки че уеб формулярите бяха много успешни, Microsoft мислех да разработя ASP.net MVC. Основният проблем с ASP.net webForms е производителността.
В уеб приложение, има четири основни аспекта, които определят ефективността:-
- Проблеми с времето за реакция
- Проблем с модулното тестване
- HTML персонализиране
- Повторна употреба на класа зад кода
ASP.net MVC се отличава с горните параметри.
История на версиите на MVC
ASP.NET MVC1
- Издаден на 13 март 2009 г
- Работи на .NET 3.5
- Visual Studio 2008
- MVC шаблонна архитектура с WebForm Engine
- Основните характеристики включват Html & Единично тестване, Ajax Helpers, Routing и др.
ASP.NET MVC2
- Тази версия е пусната на 10 март 2010 г
- Работи на .NET 3.5,4.0 и с Microsoft Visual Studio 2008
- Включете функция като Templated helpers, Ul helpers с автоматично скеле и адаптивни шаблони
- Той поддържа атрибути на DataAnnotations за прилагане на валидиране на модел от страна на клиент и сървър
ASP.NET MVC3
- Пуснат е на 13 януари 2011 г
- Работи на .NET 4.0 и с Microsoft Visual Studio 2010
- Използването на НuGet за доставяне на софтуер и ви позволява да управлявате зависимости в цялата платформа
- По-добре JavaПоддръжка на скриптове с jQuery валидиране и JSON свързване
- Той предлага функции като Razor view engine; подобрени атрибути за анотации на данни за валидиране на модела от страна на клиента и сървъра
ASP.NET MVC4
- Тази версия беше пусната на август 2012 г
- Работи на .NET 4.0, 4.5 и с Visual Studio 2010 & Visual Studio 2012
- Подобрения в шаблоните за проекти по подразбиране
- Предлага функции като шаблон за мобилен проект с помощта на jQuery Mobile, поддръжка на задачи за асинхронни контролери, групиране, минимизиране и др.
ASP.NET MVC5
- Издаден на 17 октомври 2013 г
- Работи на .NET 4.5, 4.5.1 и с Visual Studio 2012 & Visual OneASP.NET
- Поддържа маршрутизиране на атрибути в MVC
Характеристики на MVC
- Лесна и без триене възможност за тестване
- Пълен контрол върху вашия HTML, JavaСкрипт и URL адреси
- Съществуващ ливъридж ASP.Net Характеристики:
- Нова опция за представяне за ASP.Net
- По-прост начин за програмиране на Asp.Net
- Ясно разделяне на логиката: модел, изглед, контролер
- Тест-ориентирана разработка
- Подкрепа за паралелно развитие
Неща, които трябва да запомните, докато създавате MVC приложение
Ето няколко полезни неща в този ASP.NET MVC урок, които трябва да запомните, за да създадете MVC приложение:
- Трябва да запомните, че ASP .net MVC НЕ е заместител на приложения, базирани на ASP.Net уеб формуляри
- Подходът за разработване на MVC приложения трябва да бъде решен въз основа на изискванията и функциите на приложението, предоставени от ASP .net MVC, за да отговарят на специфичните нужди за разработка.
- Процесът на разработка на приложения с ASP .NET MVC е по-сложен в сравнение с приложенията, базирани на уеб формуляри.
- Поддържаемостта на приложението винаги е по-висока с разделяне на задачите на приложението.
MVC е модел на софтуерна архитектура, който следва метода за разделяне на проблемите. В този модел .Net приложенията са разделени на три взаимосвързани части, които се наричат Модел, Изглед и Контролер.
Целта на модела MVC е всяка от тези части да може да бъде разработена, тествана в относителна изолация и също комбинирана, за да се създаде много стабилно приложение.
Нека разгледаме всички тях в детайли:
Модели
Моделните обекти са части от приложението, които реализират логиката на приложението домейн за данни. Той извлича и съхранява състоянието на модела в база данни. Например обектът продукт може да извлича информация от a база данни, оперирайте го. След това запишете информация обратно в таблицата с продукти в SQL сървъра.
Прегледи
Изгледите са компонентите, които се използват за показване на потребителския интерфейс (UI) на приложението, наричан още viewmodel в MVC. Той показва приложението .Net MVC, което е създадено от данните на модела.
Често срещаният пример би бил изглед за редактиране на таблица с елементи. Той показва текстови полета, изскачащи прозорци и квадратчета за отметка въз основа на текущото състояние на продуктите и обекта.
Регулатор
Контролерите управляват взаимодействието на потребителя, работят с модела и избират изглед за изобразяване на този дисплей Ul. В приложение .Net MVC изгледът показва само информация, контролерът управлява и отговаря на въвеждането и взаимодействието на потребителя с помощта на филтри за действие в MVC.
Например, контролерът управлява стойностите на низа на заявката и предава тези стойности на модела.
Уеб формуляри срещу MVC
параметри | WebFroms | MVC |
---|---|---|
Модел | Asp.Net Web Forms следват управляван от събития модел на разработка. | Asp.Net MVC използва модел за разработка, базиран на MVC модел. |
Използва се от | Съществува от 2002 г | Издадена е за първи път през 2009 г |
Поддръжка за състояние на изглед | Asp.Net Web Form поддържа състояние на изглед за управление на състоянието от страна на клиента. | .Net MVC не поддържа състояние на изглед. |
URL тип | Asp.Net Web Form има базирани на файлове URL адреси. Това означава, че името на файла съществува в URL адресите и те трябва да съществуват физически. | Asp.Net MVC има базирани на маршрут URL адреси, което означава URL адреси, които се пренасочват към контролери и действия. |
Синтаксис | Asp.Net MVC следва синтаксиса на уеб формуляри. | Asp.Net MVC следва адаптивния синтаксис. |
Тип изглед | Уеб формуляр, изгледите са тясно свързани със задния код (ASPX-CS), т.е. логиката. | MVC, изгледите и логиката винаги се съхраняват отделно. |
Постоянен вид и усещане | Има главни страници за последователен външен вид. | Asp.Net MVC има оформления за последователен външен вид. |
Повторна употреба на кода | Web Form предлага потребителски контроли за повторно използване на кода. | Asp.Net MVC предлага частични изгледи за повторно използване на кода. |
Контрол за HTML | Less контрол върху изобразения HTML. | Пълен контрол над HTML |
Държавно управление | Автоматично управление на състоянието на контролите. | Ръчно управление на държавата. |
TDD поддръжка | Изисква се слаб или персонализиран TDD. | Насърчава и включва TDD! |
Предимства на ASP.NET MVC
- Приложения с висока поддръжка по подразбиране
- Позволява ви да замените всеки компонент на приложението.
- По-добра поддръжка за разработка, управлявана от тестове
- Сложните приложения са лесни за управление поради разделенията на модел, изглед и контролери.
- Предлага здрав механизъм за маршрутизиране с шаблон на предния контролер
- Предлага по-добър контрол върху поведението на приложението с елиминирането на състоянието на изгледа и базираните на сървъра форми
- .Net MVC приложенията се поддържат от големи екипи от разработчици и уеб дизайнери
- Предлага повече контрол върху поведението на приложението. Той също така използва оптимизирана честотна лента за заявки, отправени към сървъра
Недостатъци на ASP.NET MVC
- Не можете да видите визуализация на страницата с дизайн като .aspx страницата.
- Трябва да стартирате програмата всеки път, за да видите нейния действителен дизайн.
- Разбирането на потока на приложението може да бъде предизвикателство
- Той е доста сложен за изпълнение, така че не е идеален вариант за малки приложения
- Трудно е да се научи MVC за ASP.NET, тъй като изисква отлично разбиране на MVC модела
Най-добри практики при използване на ASP.Net MVC
- Създайте отделна сборка за MODEL в случай на голям и сложен код, за да избегнете нежелана ситуация o
- Моделът трябва да включва бизнес логика, поддръжка на сесии, част за валидиране и част за логика на данни.
- VIEW не трябва да съдържа бизнес логика и поддръжка на сесии, използвайте ViewData за достъп до данни в View
- Бизнес логиката и достъпът до данни никога не трябва да се появяват в ControllerViewData
- Контролерът трябва да отговаря само за подготовката и връщането на изглед, извикващ модел, пренасочване към действие и т.н.
- Изтрийте Демо код от приложението, когато го създадете Изтрийте AccountController
- Използвайте само специфичен изглед, за да създадете HTML маркиране от вашия изглед, тъй като това е комбинация от HTML и програмния код.
Oбобщение
- ASP.NET MVC е рамка за уеб разработка с отворен код от Microsoft което осигурява a Архитектура на контролера за изглед на модел.
- ASP.net MVC предлага алтернатива на ASP.net уеб формуляри за изграждане на уеб приложения.
- Основният проблем с ASP.net webForms е производителността.
- ASP.net MVC предлага лесна и безпроблемна възможност за тестване с пълен контрол върху вашия HTML и URL адреси.
- Трябва да запомните, че ASP .net MVC НЕ е заместител на приложения, базирани на ASP.Net уеб формуляри.
- Подходът на разработката на MVC приложения или жизнения цикъл на ASP.NET MVC трябва да бъде решен въз основа на изискванията и функциите на приложението, предоставени от ASP .net MVC, за да отговарят на специфичните нужди за разработка.
- ASP.NET MVC предлага приложения с висока поддръжка по подразбиране.
- С ASP.net не можете да видите визуализация на страницата с дизайн като .aspx страницата.
- Като най-добра практика моделът трябва да включва бизнес логика, поддръжка на сесии, част за валидиране и част за логика на данни.