Vyatka-sputnik.ru

Курсы и образование
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Asp net mvc 5 книга

Elit-Knigi.ru

Адам Фримен | ASP.NET Core MVC 2 с примерами на C# для профессионалов (2019) [PDF]

Адам Фримен | ASP.NET Core MVC 2 с примерами на C# для профессионалов (2019) [PDF]
Автор: Адам Фримен
Издательство: ВИЛЬЯМС
Жанр: Программирование
Формат: PDF
Качество: Хороший скан
Иллюстрации: Черно-белые

Описание: В этом 7-м издании книга-бестселлер по MVC обновлена с учетом версии ASP.NET Core MVC 2. Она содержит подробные объяснения функциональности Core MVC, которая позволяет разработчикам выпускать более экономные, оптимизированные под облако и готовые к функционированию на мобильных устройствах приложения для платформы .NET. В книге показано, как поместить ASP.NET Core MVC в контекст разработки, а также глубоко исследованы инструменты и приемы, требуемые для построения современных, оптимизированных под облако, расширяемых веб-приложений. Детально описаны все новые средства MVC и приведены пояснения, как наиболее эффективно применять их к новым и существующим проектам.

Инфраструктура ASP.NET Core MVC Framework — это последнее развитие веб-платформы ASP.NET от Microsoft, построенное на совершенно новом фундаменте. Она представляет основополагающее изменение в том, каким образом Microsoft конструирует и развертывает веб-инфраструктуры, и свободна от наследия более ранних технологий, подобных Web Forms. Инфраструктура ASP.NET Core MVC предлагает «независимую от хоста» структуру и высокопродуктивную модель программирования, которая способствует построению более чистой кодовой архитектуры, разработке через тестирование и значительной расширяемости.

Автор многочисленных бестселлеров Адам Фримен тщательно пересмотрел эту лидирующую на рынке книгу и объяснил, как извлечь максимум из ASP.NET Core MVC.

Он начинает с элементарных вещей и рассказывает обо всем вплоть до расширенных средств, чтобы дать вам исчерпывающие знания, в которых вы нуждаетесь. Книга включает полностью работающий учебный пример функционирующего приложения, который вы сможете использовать в качестве шаблона для собственных проектов.

Что нового в этом издании:
— Полное обновление с учетом возможностей Visual Studio 2017, C# 7 и .NET Core 2
— Раскрытие новых средств, таких как фильтры представлений
— Более широкий, нежели ранее, охват платформы и инструментария, с большим объемом сведений по Visual Studio Code и работе с .NET Core на платформах, отличных от Windows
— Развертывание приложений на основе контейнера Docker

Благодаря книге «ASP.NET Core MVC 2 с примерами на C# для профессионалов», вы освоите следующие темы:
— Обретете глубокое понимание архитектуры ASP.NET Core MVC
— Исследуете инфраструктуру ASP.NET MVC Framework как единое целое
— Увидите в действии инфраструктуру MVC и разработку через тестирование
— Узнаете о новых возможностях ASP.NET Core MVC 2 и научитесь их эффективно применять в своей работе
— Выясните, как создавать веб-службы REST и одностраничные приложения (SPA)
— Сможете воспользоваться имеющимися у вас знаниями предшествующих выпусков MVC для быстрого и эффективного освоения новой модели программирования

Об авторе:
Адам Фримен — опытный специалист в области информационных технологий, занимавший ведущие позиции во многих компаниях, последней из которых был глобальный банк, где он работал на должностях директора по внедрению технологий и руководителя административной службы. После ухода из банка Адам уделяет все свое время писательской деятельности и бегу на длинные дистанции.

Какую версию и модель ASP.NET выбрать

Выбрать фреймворк иногда так же трудно, как и придумать имя для персонажа в RPG. Поэтому мы подготовили статью о том, как выбрать версию ASP.NET.

ASP.NET — мощная технология для создания сайтов. Но новичку трудно к ней подступиться, потому что эта технология существует в разных версиях — например, ASP.NET и ASP.NET Core. А кроме версий, есть еще четыре модели:

Поможем вам разобраться в этом многообразии.

Евгений Кучерявый

Пишет о разработке сайтов, в свободное время создает игры. Мечтает открыть свою студию и выпускать ламповые RPG.

Какие есть версии ASP.NET

Версий достаточно много, но уделить внимание стоит двум: ASP.NET 5 и ASP.NET Core.

ASP.NET 5

Для создания большинства сайтов используют именно эту версию. Она работает на .NET Framework, в котором сейчас больше возможностей, чем в .NET Core. Поэтому эта версия еще достаточно долго будет востребована.

Однако поддержку .NET Framework планируют прекратить. Поэтому изучать ASP.NET 5 в первую очередь стоит тем разработчикам, которые собираются устраиваться в команду, которая развивает и поддерживает существующий проект.

ASP.NET Core

Эта версия использует .NET Core — переписанный с нуля .NET Framework. Его основные особенности: открытый исходный код и возможность запуска на любой платформе (Windows, Unix, MacOS, iOS, Android).

Читать еще:  Книги для начинающего маркетолога

Microsoft планирует развивать именно .NET Core — в сентябре выйдет версия .NET Core 3.0, а в ноябре 2020 года появится .NET 5, который совместит в себе все преимущества .NET Framework и .NET Core (в Microsoft любят название .NET).

Эту версию стоит изучать тем, кто собирается работать над новыми проектами. Однако пока что в ASP.NET Core представлены не все возможности, которые есть в ASP.NET 5. Поэтому сегодня он менее востребован по сравнению со своим основным конкурентом.

Какую модель ASP.NET выбрать

Выбрав версию, вы можете начать изучение любой из следующих моделей, не считая Razor Pages — она представлена только в ASP.NET Core.

ASP.NET Web Forms

Это обычная версия ASP.NET, которая позволяет работать со страницами с помощью HTML-элемента form (отсюда и название).

Позволяет быстро разработать сайт

Поэтому Web Forms отлично подходят для создания прототипов — можно в короткий срок собрать демонстрационный проект, чтобы показать его заказчику.

Огромное количество библиотек

Web Forms достаточно давно на рынке, поэтому успело появиться множество библиотек, которые расширяют возможности фреймворка.

Схожесть с Windows Forms

Программисты, которые раньше занимались приложениями для компьютеров, смогут быстро вникнуть в процесс создания сайтов благодаря той же концепции событий.

Удобная разработка бизнес-приложений

Web Forms хорошо подходит для проектов, которые связаны с работой с большим объемом данных или большим количеством выполняемых запросов.

Однако есть и недостатки:

  • сложно проводить Unit-тестирование из-за событийно-ориентированной разработки;
  • основной код связан с кодом интерфейса;
  • большой размер страниц.

В целом эта модель хорошо подходит для новичков, которые только начинают знакомство с программированием или уже сталкивались со скриптовыми языками, с помощью которых обрабатывают события.

ASP.NET MVC

Эта модель позволяет использовать декларативный подход и MVC-паттерн (модель-вид-контроллер). Так разработчику становится доступной привязка данных и другие возможности.

Разделение интерфейса и основного кода

Благодаря декларативному подходу разработчику не приходится добавлять в код приложения множество обработчиков событий — это позволяет сосредоточиться на создании основного функционала.

Широкие возможности для Unit-тестирования

Отсутствие обработчиков позволяет лучше производить тестирование. Также можно использовать подход TDD — разработку через тестирование.

Небольшой размер страниц

Сокращение кода позволяет ускорить загрузку сайта.

Простая интеграция библиотек и фреймворков для JavaScript

Можно легко добавить jQuery, Angular.JS или React.JS к своему проекту.

  • У начинающих разработчиков могут быть сложности с освоением декларативного подхода.
  • Небольшое количество библиотек и компонентов.
  • Для запуска проекта требуется больше времени.

ASP.NET MVC используется многими компаниями, поэтому, изучая его, вы будете уверены, что всегда сможете найти работу.

ASP.NET Web API

Эта модель позволяет создавать не только сайт, но и API, к которому может подключиться другой сайт, мобильное или десктопное приложение. Такой проект может стать серверной частью, которая будет обрабатывать запросы клиентов.

Например, так можно создать сначала сайт проекта, а потом быстро разработать связанные с ним приложения, используя API.

К ASP.NET Web API можно подключить и другие модели — например, MVC.

ASP.NET Razor Pages

Razor Pages — это новая улучшенная версия MVC. Она позволяет создавать файлы с расширением .cshtml, которые являются смесью C# и HTML. Выглядят они так:

Таким образом разработка ускоряется еще в несколько раз. Однако эта технология пока очень молодая, поэтому вакантных мест или заказов на фрилансе, в которых требуется ее использование, еще немного.

Asp net mvc 5 книга

Платформа ASP.NET MVC представляет собой фреймворк для создания сайтов и веб-приложений с помощью реализации паттерна MVC.

Концепция паттерна (шаблона) MVC (model — view — controller) предполагает разделение приложения на три компонента:

Контроллер (controller) представляет класс, обеспечивающий связь между пользователем и системой, представлением и хранилищем данных. Он получает вводимые пользователем данные и обрабатывает их. И в зависимости от результатов обработки отправляет пользователю определенный вывод, например, в виде представления.

Представление (view) — это собственно визуальная часть или пользовательский интерфейс приложения. Как правило, html-страница, которую пользователь видит, зайдя на сайт.

Модель (model) представляет класс, описывающий логику используемых данных.

Общую схему взаимодействия этих компонентов можно представить следующим образом:

В этой схеме модель является независимым компонентом — любые изменения контроллера или представления не затрагивают модель. Контроллер и представление являются относительно независимыми компонентами, и нередко их можно изменять независимо друг от друга.

Читать еще:  Андроид для начинающих книга скачать

Благодаря этому реализуется концепция разделение ответственности , в связи с чем легче построить работу над отдельными компонентами. Кроме того, вследствие этого приложение обладает лучшей тестируемостью. И если нам, допустим, важна визуальная часть или фронтэнд, то мы можем тестировать представление независимо от контроллера. Либо мы можем сосредоточиться на бэкэнде и тестировать контроллер.

Конкретные реализации и определения данного паттерна могут отличаться, но в силу своей гибкости и простоты он стал очень популярным в последнее время, особенно в сфере веб-разработки.

Свою реализацию паттерна представляет платформа ASP.NET MVC. 2013 год ознаменовался выходом новой версии ASP.NET MVC — MVC 5, а также релизом Visual Studio 2013, которая предоставляет инструментарий для работы с MVC5.

Хотя во многих аспектах MVC 5 не слишком сильно будет отличаться от MVC 4, многое из одной версии вполне применимо к другой, но в то же время есть и существенные отличия:

В MVC 5 изменилась концепция аутентификации и авторизации. Вместо SimpleMembershipProvider была внедрена система ASP.NET Identity, которая использует компоненты OWIN и Katana.

Для создания адаптивного и расширяемого интерфейса в MVC 5 используется css-фреймворк Bootstrap

Добавлены фильтры аутентификации, а также появилась функциональность переопределения фильтров

В MVC 5 также добавлены атрибуты маршрутизации

Это наиболее важные нововведения в MVC 5. Кроме того, есть еще ряд менее значимых, например, использование по умолчанию Entity Framework 6, некоторые изменения при создании проекта (концепция One ASP.NET), дополнительные компоненты и т.д.

В любом случае все полученные при работе с MVC 4 навыки можно успешно применять при использовании MVC 5, учитывая, конечно, нововведения.

Начало работы с ASP.NET MVC 5

Для создания веб-приложений на платформе ASP.NET MVC 5 необходима среда разработки — Visual Studio 2013 или Visual Studio 2015. которую можно найти по адресу Visual Studio 2015.

После установки откроем Visual Studio 2015 и в меню File (Файл) выберем пункт New Project. (Создать проект) . Перед нами откроется диалоговое окно создания проекта, где нам надо перейти на подвкладку Web и выбрать шаблон ASP.NET Web Application (.NET Framework) :

Если мы используем Visual Studio 2013, то нам будет доступен только один тип проекта:

Дадим какое-нибудь имя проекту и нажмем ОК. После этого отобразится окно выбора шаблона нового приложения:

По умолчанию уже выбран шаблон MVC.

Кроме того, данное диалоговое окно позволяет задать опции тестирования.

Также нам доступен в правой части окна выбор механизма аутентификации в приложении (кнопка Change Authentication ). По умолчанию установлен тип Individual User Accounts . Не будем его изменять. Но если мы нажмем на кнопку Change Authentication, то нам будет доступен выбор из следующих типов аутентификации:

Что они представляют?

No Authentication : приложение не требует аутентификации пользователя

Individual User Accounts : требуется индивидуальная аутентификация, учетные записи пользователей хранятся в базе данных, кроме того, доступна аутентификация с помощью социальных сетей

Organizational Accounts : в основном предназначено для корпоративных приложений, которые используют Active Directory или Office 365

Windows Authentication : для управления учетными записями используется аутентификация Windows, так называемые intranet-приложения

Позже мы подробнее поговорим о механизмах аутентификации в приложении.

Нажимаем кнопку OK, и создается новый проект. Он уже содержит разветвленную структуру и имеет некоторое наполнение по умолчанию. Запустим проект на выполнение, и нам отобразится некоторый контент, который уже имеется по умолчанию в приложении:

Структура проекта MVC 5

Весь этот функционал обеспечивается следующей структурой проекта:

Вкратце рассмотрим, для чего нужны все эти папки и файлы.

App_Data : содержит файлы, ресурсы и базы данных, используемые приложением

App_Start : хранит ряд статических файлов, которые содержат логику инициализации приложения при запуске

Content : содержит вспомогательные файлы, которые не включают код на c# или javascript, и которые развертываются вместе с приложением, например, файлы стилей css

Controllers : содежит файлы классов контроллеров. По умолчанию в эту папку добавляются два контроллера — HomeController и AccountController

fonts : хранит дополнительные файлы шрифтов, используемых приложением

Models : содержит файлы моделей. По умолчанию Visual Studio добавляет пару моделей, описывающих учетную запись и служащих для аутентификации пользователя

Scripts : каталог со скриптами и библиотеками на языке javascript

Читать еще:  Российские издательства книг

Views : здесь хранятся представления. Все представления группируются по папкам, каждая из которых соответствует одному контроллеру. После обработки запроса контроллер отправляет одно из этих представлений клиенту. Также здесь имеется каталог Shared, который содержит общие для всех представления

Global.asax : файл, запускающийся при старте приложения и выполняющий начальную инициализацию. Как правило, здесь срабатывают методы классов, определенных в папке App_Start

Startup.cs : поскольку в приложении MVC 5 используются библиотеки, применяющие спецификацию OWIN, то данный файл организует связь между OWIN и приложением. (OWIN представляет спецификацию, описывающую взаимодействие между компонентами приложения)

Web.config : файл конфигурации приложения

Конкретная структура каждого отдельного приложения, естественно, будет отличаться, а гибкость MVC позволяет изменять структуру, приспосабливая, ее к своим потребностям. Но описанные выше моменты будут общими для большинства проектов.

Теперь после ознакомления со структурой проекта создадим первое приложение.

ASP.NET MVC — Views

In an ASP.NET MVC application, there is nothing like a page and it also doesn’t include anything that directly corresponds to a page when you specify a path in URL. The closest thing to a page in an ASP.NET MVC application is known as a View.

In ASP.NET MVC application, all incoming browser requests are handled by the controller and these requests are mapped to controller actions. A controller action might return a view or it might also perform some other type of action such as redirecting to another controller action.

Let’s take a look at a simple example of View by creating a new ASP.NET MVC project.

Step 1 − Open the Visual Studio and click File → New → Project menu option.

A new Project dialog opens.

Step 2 − From the left pane, select Templates → Visual C# → Web.

Step 3 − In the middle pane, select ASP.NET Web Application.

Step 4 − Enter the project name ‘MVCViewDemo’ in the Name field and click Ok to continue. You will see the following dialog which asks you to set the initial content for the ASP.NET project.

Step 5 − To keep things simple, select the Empty option and check the MVC checkbox in the ‘Add folders and core references for’ section and click Ok.

It will create a basic MVC project with minimal predefined content. We now need to add controller.

Step 6 − Right-click on the controller folder in the solution explorer and select Add → Controller.

It will display the Add Scaffold dialog.

Step 7 − Select the MVC 5 Controller – Empty option and click ‘Add’ button.

The Add Controller dialog will appear.

Step 8 − Set the name to HomeController and click ‘Add’ button.

You will see a new C# file ‘HomeController.cs’ in the Controllers folder which is open for editing in Visual Studio as well.

Let’s update the HomeController.cs file, which contains two action methods as shown in the following code.

Step 9 − Run this application and apend /Home/MyController to the URL in the browser and press enter. You will receive the following output.

As MyController action simply returns the string, to return a View from the action we need to add a View first.

Step 10 − Before adding a view let’s add another action, which will return a default view.

Step 11 − Run this application and apend /Home/MyView to the URL in the browser and press enter. You will receive the following output.

You can see here that we have an error and this error is actually quite descriptive, which tells us it can’t find the MyView view.

Step 12 − To add a view, right-click inside the MyView action and select Add view.

It will display the Add View dialog and it is going to add the default name.

Step 13 − Uncheck the ‘Use a layout page’ checkbox and click ‘Add’ button.

We now have the default code inside view.

Step 14 − Add some text in this view using the following code.

Step 15 − Run this application and apend /Home/MyView to the URL in the browser. Press enter and you will receive the following output.

Ссылка на основную публикацию
Adblock
detector