SlideShare a Scribd company logo
1 of 20
ASP.NET MVC 5
COURSE
MODULE 1 : OVERVIEW
BY SERGEY SELETSKY
Course overview
 Module 1 : Overview
 Module 2 : Models
 Module 3 : Controllers
 Module 4 : Views
 Module 5 : Security
 Module 6 : Routing
 Module 7 : Performance
 Module 8 : Testing and Debugging
 Module 9 : Web API
 Module 10 : Integration
Agenda
 Introduction
 Architecture
 MVC vs Web Forms
 Project structure
 Configuration
 App show case
 Best practices
 Home work
Introduction
ASP.NET MVC framework is a lightweight,
highly testable presentation framework
that is integrated with existing ASP.NET features.
First version released at 13 March 2009
In April 2009, the ASP.NET MVC source code was released
Introduction
ASP.NET MVC enables a clean separation of concerns and that
gives you full control over markup.
TDD-friendly
Support latest web standards
RESTful by default
Architecture
ASP.NET Overview
Architecture
Controller
Retrieves Model
“Does Stuff”
View
Visually represents
the model
Model
MVC vs Web Forms
MVC Web Forms
Strengths
 Full control over HTML
 Clean HTML
 Separation of Concerns
 TDD-friendly
 Many View Engines
 RESTful by default
 Lightweight
 Simple integration
 Designed for RAD
 Visual Studio Designer
 Many third-party controls
 Easy for Win Forms engineers
MVC vs Web Forms
MVC Web Forms
Weaknesses
 Not based on server events
 Complex for Web Forms Dev's
 Few third-party libraries
 No View State
 UI linked with logic
 Difficult to test
 Large page size
 View State
MVC vs Web Forms
MVC Web Forms
Opportunities
 Allows to use TDD
 Reusable
 Better integrability
 RAD
MVC vs Web Forms
MVC Web Forms
Threats
 Difficult to learn
 Slow in developing
 Difficult to integrate
 Difficult for UI Developers
Project structure
By default, MVC projects include the following folders:
•App_Data, store folder for data. This folder has the same role in ASP.NET Web Forms.
•Content, which is the recommended location for static files.
•Controllers, which is the recommended location for controllers.
•Models, which is provided for classes that represent the app.
•Scripts, folder for script files.
•Views, which is the recommended location for views.
Project structure
Creating first project demo
Configuration
Routing configuration
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new {
controller = "Home",
action = "Index",
id = UrlParameter.Optional }
);
}
}
Configuration
Bundling and Minifying configuration
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/bootstrap")
.Include("~/Scripts/bootstrap.js",
"~/Scripts/respond.js"));
bundles.Add(new StyleBundle("~/Content/css")
.Include("~/Content/bootstrap.css",
"~/Content/site.css"));
}
@Scripts.Render("~/bundles/bootstrap")
@Styles.Render("~/Content/css")
Real app showcase
Commercial open source app demo
Best practices
Keep Controllers Thin
Home work
Create your own solution
1. Create ASP.NET MVC 5 Project for future sessions
2. Create book model with few properties
3. Create view for book model
4. Create books controller
5. Use your book model in books controller
6. Implement creating and editing for books
References
Professional
ASP.NET MVC 5
By Jon Galloway
Pro ASP.NET MVC 5
By Adam Freeman
Programming
Microsoft ASP.NET
MVC, Third Edition
By Dino Esposito
THANK YOU
20
Sergey Seletsky
sselet@softserveinc.com
https://www.linkedin.com/in/sergeyseletsky

More Related Content

What's hot

ASP .NET MVC
ASP .NET MVC ASP .NET MVC
ASP .NET MVC
eldorina
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVC
Khaled Musaied
 

What's hot (19)

Getting started with MVC 5 and Visual Studio 2013
Getting started with MVC 5 and Visual Studio 2013Getting started with MVC 5 and Visual Studio 2013
Getting started with MVC 5 and Visual Studio 2013
 
Asp.net mvc presentation by Nitin Sawant
Asp.net mvc presentation by Nitin SawantAsp.net mvc presentation by Nitin Sawant
Asp.net mvc presentation by Nitin Sawant
 
ASP.NET MVC Presentation
ASP.NET MVC PresentationASP.NET MVC Presentation
ASP.NET MVC Presentation
 
Asp.net mvc
Asp.net mvcAsp.net mvc
Asp.net mvc
 
ASP .NET MVC
ASP .NET MVC ASP .NET MVC
ASP .NET MVC
 
ASP.NET MVC Performance
ASP.NET MVC PerformanceASP.NET MVC Performance
ASP.NET MVC Performance
 
ASP.NET MVC 3
ASP.NET MVC 3ASP.NET MVC 3
ASP.NET MVC 3
 
Mvc architecture
Mvc architectureMvc architecture
Mvc architecture
 
MSDN - ASP.NET MVC
MSDN - ASP.NET MVCMSDN - ASP.NET MVC
MSDN - ASP.NET MVC
 
Introduction to ASP.NET MVC 1.0
Introduction to ASP.NET MVC 1.0Introduction to ASP.NET MVC 1.0
Introduction to ASP.NET MVC 1.0
 
ASP.NET Brief History
ASP.NET Brief HistoryASP.NET Brief History
ASP.NET Brief History
 
ASP .net MVC
ASP .net MVCASP .net MVC
ASP .net MVC
 
ASP .Net MVC 5
ASP .Net MVC 5ASP .Net MVC 5
ASP .Net MVC 5
 
MVC 1.0 als alternative Webtechnologie
MVC 1.0 als alternative WebtechnologieMVC 1.0 als alternative Webtechnologie
MVC 1.0 als alternative Webtechnologie
 
Introduction to ASP.NET MVC
Introduction to ASP.NET MVCIntroduction to ASP.NET MVC
Introduction to ASP.NET MVC
 
MVC ppt presentation
MVC ppt presentationMVC ppt presentation
MVC ppt presentation
 
ASP .NET MVC - best practices
ASP .NET MVC - best practicesASP .NET MVC - best practices
ASP .NET MVC - best practices
 
Web api
Web apiWeb api
Web api
 
Asp 1a-aspnetmvc
Asp 1a-aspnetmvcAsp 1a-aspnetmvc
Asp 1a-aspnetmvc
 

Similar to Asp.net mvc 5 course module 1 overview

ASP.NET MVC Introduction
ASP.NET MVC IntroductionASP.NET MVC Introduction
ASP.NET MVC Introduction
Sumit Chhabra
 
ASP.NET MVC Fundamental
ASP.NET MVC FundamentalASP.NET MVC Fundamental
ASP.NET MVC Fundamental
ldcphuc
 

Similar to Asp.net mvc 5 course module 1 overview (20)

ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 
Programming is Fun with ASP.NET MVC
Programming is Fun with ASP.NET MVCProgramming is Fun with ASP.NET MVC
Programming is Fun with ASP.NET MVC
 
Aspnetmvc 1
Aspnetmvc 1Aspnetmvc 1
Aspnetmvc 1
 
Session 1
Session 1Session 1
Session 1
 
ASP.Net | Sabin Saleem
ASP.Net | Sabin SaleemASP.Net | Sabin Saleem
ASP.Net | Sabin Saleem
 
Asp.net mvc
Asp.net mvcAsp.net mvc
Asp.net mvc
 
ASP.NET MVC Introduction
ASP.NET MVC IntroductionASP.NET MVC Introduction
ASP.NET MVC Introduction
 
Mvc
MvcMvc
Mvc
 
Asp.netmvc handson
Asp.netmvc handsonAsp.netmvc handson
Asp.netmvc handson
 
ASP.NET MVC Fundamental
ASP.NET MVC FundamentalASP.NET MVC Fundamental
ASP.NET MVC Fundamental
 
Principles of MVC for Rails Developers
Principles of MVC for Rails DevelopersPrinciples of MVC for Rails Developers
Principles of MVC for Rails Developers
 
Technoligent providing custom ASP.NET MVC development services
Technoligent providing custom ASP.NET MVC development servicesTechnoligent providing custom ASP.NET MVC development services
Technoligent providing custom ASP.NET MVC development services
 
Introduction To Mvc
Introduction To MvcIntroduction To Mvc
Introduction To Mvc
 
ASP.NET MVC4 Overview
ASP.NET MVC4 OverviewASP.NET MVC4 Overview
ASP.NET MVC4 Overview
 
MVC Framework
MVC FrameworkMVC Framework
MVC Framework
 
Asp.Net Core MVC with Entity Framework
Asp.Net Core MVC with Entity FrameworkAsp.Net Core MVC with Entity Framework
Asp.Net Core MVC with Entity Framework
 
Asp.net Mvc Introduction
Asp.net Mvc IntroductionAsp.net Mvc Introduction
Asp.net Mvc Introduction
 
ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)
 
MVC Architecture in ASP.Net By Nyros Developer
MVC Architecture in ASP.Net By Nyros DeveloperMVC Architecture in ASP.Net By Nyros Developer
MVC Architecture in ASP.Net By Nyros Developer
 
Introduction to mvc architecture
Introduction to mvc architectureIntroduction to mvc architecture
Introduction to mvc architecture
 

More from Sergey Seletsky

More from Sergey Seletsky (14)

CICD Azure DevOps
CICD Azure DevOpsCICD Azure DevOps
CICD Azure DevOps
 
Intellias CQRS Framework
Intellias CQRS FrameworkIntellias CQRS Framework
Intellias CQRS Framework
 
Cqrs and event sourcing in azure
Cqrs and event sourcing in azureCqrs and event sourcing in azure
Cqrs and event sourcing in azure
 
CQRS and Event Sourcing
CQRS and Event SourcingCQRS and Event Sourcing
CQRS and Event Sourcing
 
Go Serverless with Azure
Go Serverless with AzureGo Serverless with Azure
Go Serverless with Azure
 
IoT Smart Home
IoT Smart HomeIoT Smart Home
IoT Smart Home
 
WiFi anywhere
WiFi anywhereWiFi anywhere
WiFi anywhere
 
MicroServices on Azure
MicroServices on AzureMicroServices on Azure
MicroServices on Azure
 
Microservice.net by sergey seletsky
Microservice.net by sergey seletskyMicroservice.net by sergey seletsky
Microservice.net by sergey seletsky
 
Continuous delivery by sergey seletsky
Continuous delivery by sergey seletskyContinuous delivery by sergey seletsky
Continuous delivery by sergey seletsky
 
Mobile development with visual studio
Mobile development with visual studioMobile development with visual studio
Mobile development with visual studio
 
Make your project up to date
Make your project up to dateMake your project up to date
Make your project up to date
 
Scrum and Kanban
Scrum and KanbanScrum and Kanban
Scrum and Kanban
 
Eco system apps
Eco system appsEco system apps
Eco system apps
 

Recently uploaded

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Recently uploaded (20)

%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 

Asp.net mvc 5 course module 1 overview

  • 1. ASP.NET MVC 5 COURSE MODULE 1 : OVERVIEW BY SERGEY SELETSKY
  • 2. Course overview  Module 1 : Overview  Module 2 : Models  Module 3 : Controllers  Module 4 : Views  Module 5 : Security  Module 6 : Routing  Module 7 : Performance  Module 8 : Testing and Debugging  Module 9 : Web API  Module 10 : Integration
  • 3. Agenda  Introduction  Architecture  MVC vs Web Forms  Project structure  Configuration  App show case  Best practices  Home work
  • 4. Introduction ASP.NET MVC framework is a lightweight, highly testable presentation framework that is integrated with existing ASP.NET features. First version released at 13 March 2009 In April 2009, the ASP.NET MVC source code was released
  • 5. Introduction ASP.NET MVC enables a clean separation of concerns and that gives you full control over markup. TDD-friendly Support latest web standards RESTful by default
  • 8. MVC vs Web Forms MVC Web Forms Strengths  Full control over HTML  Clean HTML  Separation of Concerns  TDD-friendly  Many View Engines  RESTful by default  Lightweight  Simple integration  Designed for RAD  Visual Studio Designer  Many third-party controls  Easy for Win Forms engineers
  • 9. MVC vs Web Forms MVC Web Forms Weaknesses  Not based on server events  Complex for Web Forms Dev's  Few third-party libraries  No View State  UI linked with logic  Difficult to test  Large page size  View State
  • 10. MVC vs Web Forms MVC Web Forms Opportunities  Allows to use TDD  Reusable  Better integrability  RAD
  • 11. MVC vs Web Forms MVC Web Forms Threats  Difficult to learn  Slow in developing  Difficult to integrate  Difficult for UI Developers
  • 12. Project structure By default, MVC projects include the following folders: •App_Data, store folder for data. This folder has the same role in ASP.NET Web Forms. •Content, which is the recommended location for static files. •Controllers, which is the recommended location for controllers. •Models, which is provided for classes that represent the app. •Scripts, folder for script files. •Views, which is the recommended location for views.
  • 14. Configuration Routing configuration public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); } }
  • 15. Configuration Bundling and Minifying configuration public static void RegisterBundles(BundleCollection bundles) { bundles.Add(new ScriptBundle("~/bundles/bootstrap") .Include("~/Scripts/bootstrap.js", "~/Scripts/respond.js")); bundles.Add(new StyleBundle("~/Content/css") .Include("~/Content/bootstrap.css", "~/Content/site.css")); } @Scripts.Render("~/bundles/bootstrap") @Styles.Render("~/Content/css")
  • 16. Real app showcase Commercial open source app demo
  • 18. Home work Create your own solution 1. Create ASP.NET MVC 5 Project for future sessions 2. Create book model with few properties 3. Create view for book model 4. Create books controller 5. Use your book model in books controller 6. Implement creating and editing for books
  • 19. References Professional ASP.NET MVC 5 By Jon Galloway Pro ASP.NET MVC 5 By Adam Freeman Programming Microsoft ASP.NET MVC, Third Edition By Dino Esposito

Editor's Notes

  1. Welcome to the ASP.NET MVC 5 Course. Ласково просимо в курс по ASP.NET MVC 5. My name is Sergey Seletsky, I am expert in ASP.NET MVC technology. Мене звуть Сергій Селецький, я експерт по ASP.NET MVC технології. ASP.NET MVC is an open source web application framework that implements the model–view–controller (MVC) pattern and of course based on ASP.NET. ASP.NET MVC це відкритий фреймворк для створення веб додатків, який реалізує модель-подання-контролер шаблон та оснований на ASP.NET.
  2. The course consists of ten modules at the end of which you can create high-quality web applications based on ASP.NET MVC 5. Курс складається з десяти модулів в кінці якого ви можете створювати високоякісні веб-додатки, основані на ASP.NET MVC 5. In this module you will learn the basics of ASP.NET MVC 5 and its architecture, as well as consider the example of the commercial application of open source software. У цьому модулі ви дізнаєтеся основи ASP.NET MVC 5 і його архітектури, а також розгляните на приклад комерційного програмного забезпечення з відкритим вихідним кодом. In the second module you will learn to create models and validation of them and bind it to the data context. У другому модулі ви навчитеся створювати моделі і перевірку їх а також прив'язку до контексту даних. In the third module you will learn the principles of the controllers and actions, as well as creating filters and factory of controllers and of course ways for data transition between views and controllers. У третьому модулі ви дізнаєтеся принципи контролерів і дій, а також створення фільтрів і фабрик контролерів та шляхів переходу даних між представленнями і контролерами. In the fourth module you will learn many kinds of Views and Razor Engine. У четвертому модулі ви дізнаєтеся багато цікавого про Razor Engine. In the fifth module you will learn the security features in ASP.NET MVC 5 applications. У п'ятому модулі ви дізнаєтеся особливості безпеки в ASP.NET MVC 5 додатках. In the sixth module you will learn the routing features in ASP.NET MVC 5 applications. У шостому модулі ви дізнаєтеся про функції маршрутизації в ASP.NET MVC 5 додатках. In the seventh module you will learn to optimize performance of ASP.NET MVC 5 web applications. У сьомому модулі, ви навчитеся оптимізувати продуктивність ASP.NET MVC 5 веб-додатків. In the eighth module you will learn best practices for testing ASP.NET MVC 5 applications. У восьмому модулі ви дізнаєтеся кращі практики для тестування ASP.NET MVC 5 додатків. In the ninth module you will learn ASP.NET Web API technology for building REST services. У дев'ятому модулі ви дізнаєтеся про технології ASP.NET Web API для побудови REST послуг. In the last module you will learn integration features in ASP.NET MVC 5 to extend its capabilities. В останньому модулі ви дізнаєтеся особливості інтеграції в ASP.NET MVC 5 та можливості розширення його функціональності.
  3. So, lets start the first module from agenda and introduction to ASP.NET MVC 5 and its architecture. Отож, почнемо перший модуль з порядку денного і введення в ASP.NET MVC 5 та його архітектуру. And we will compare MVC and Web Forms what is better the decision is yours. Ми будемо порівнювати MVC і Web Forms, що краще вирішувати вам. I will provide you overview of project structure and configuration capabilities. Я продемонструю вам огляд структури проекту та можливостей конфігурації. And after that I will show you big commercial project based on ASP.NET MVC 5 and some best practices. І після цього я покажу вам великий комерційний проект на основі ASP.NET MVC 5 і деяких кращих практик. And for the end you will have a small homework. І в кінці ви будете мати невелике домашнє завдання.
  4. ASP.NET MVC framework is a lightweight, highly testable presentation framework that is integrated with existing ASP.NET features. ASP.NET MVC фреймворк дуже легкий, і простий для тестування, та інтегрований з існуючими функціями ASP.NET. First version released at 2009 and the source code was released in this year too. Перша версія випущена в 2009 році її вихідний код був випущений в цьому році. For comparison with Web Forms which was released in 2002, technical design of ASP.NET MVС is better thought-out. Для порівняння з веб-формами, які були випущені в 2002 році, технічний дизайн ASP.NET MVС краще продуманий. Anyway Microsoft keep promise for support both technologies as long as possible. У будь-якому випадку Microsoft тримає обіцянку підтримки ці технологій як можна довше.
  5. ASP.NET MVC enables a clean separation of concerns and that gives you full control over markup. ASP.NET MVC дозволяє робити чистий поділ інтересів, це дає вам повний контроль над розміткою. Separation of concerns is a design principle for separating an application into distinct sections, such that each section addresses a separate concern. Поділ проблем це принцип конструкції для розділення додатків на різні розділи, наприклад, що кожен розділ присвячений окремому інтересу. A concern is a set of information that affects the code of a computer program. Концерн це набір інформації, який впливає на код комп'ютерної програми. Which in turn improves quality assurance and development process and of course possibilities of using new web technologies. Що в свою чергу, покращує контроль якості і процес розвитку і, звичайно можливості використання нових веб-технологій. It is also important that ASP.NET MVC applications using REST based interface by default. Також важливо, що додатки ASP.NET MVC, використовують інтерфейс REST за замовчуванням.
  6. So in this slide you can see ASP.NET is the core for all Microsoft web frameworks. Отож, в цьому слайді ви бачите що ASP.NET є основною для всіх веб фреймворків Microsoft. It makes possible to use all this frameworks together in one project and create services or sites or both. Це робить можливим використовувати все це рамок разом в одному проекті і створити служби або веб-сайти Currently ASP.NET contains many frameworks such as legacy Web Pages and Web Forms and modern Single Page Apps, Web API and SignalR. В даний час ASP.NET об'єднує багато фреймворків, таких як успадкованих Web Pages і Web Forms та Single Page Apps, Web API і SignalR. How to use many frameworks in one project we consider it in the following modules Як використовувати багато фреймворків в одному проекті ми розглянемо в наступних модулях
  7. Let`s look what happens when somebody send request to MVC application. Давайте подивимося, що відбувається, коли хтось відправляє запит на MVC додаток. Request gets routed to the controller, this is the first big difference with Web Forms because classic ASP.NET use file system for handle request. Запит направляється до контролера, це перша велика відмінність від веб-форм, оскільки класичний ASP.NET використовує файлову систему для обробки запиту. After that controller retrieves model and compute date and send model with data for visualization to the view for generating markup for the response to the user. Після цього контролер отримує модель та обчислює дані і відправляє модель з даними для візуалізації з метою генерації розмітки для відповіді користувачу. It allows to separate UI and Logic and connect them by model of data. Це дозволяє відокремити користувальницький інтерфейс і логіку, завдяки моделі даних.
  8. Let`s compare MVC and Web Forms. Давайте порівнювати MVC і Web Forms. What about strengths of both technologies. Як що до сильних сторін обох технологій. MVC significantly increases your control over rendered HTML. MVC значно збільшує контроль над HTML. Separation of concerns. ASP.NET MVC enforces a "separation of concerns", in which the application is divided into discrete and loosely-bound parts—namely, the model, view, and controller parts of the application. Поділ проблем. ASP.NET MVC забезпечує дотримання "поділу інтересів", в якому додаток ділиться на дискретні і вільно-зв'язані частини, а саме, модель, вид і контролер. This makes MVC applications easier to test and maintain. Це робить додатки MVC простішими для тестування і підтримки. Test-driven development. MVC was designed to make test-driven development easier. Розробка на основі тестів. MVC був розроблений, щоб зробити легше розробку на основі тестів. You can create an MVC project and its test project at the same time. Ви можете створити проект MVC і її тестовий проект, в той же час. You can then create unit tests for each action method in your application, and run them without invoking the complete request cycle for a Web application. Ви можете створювати модульні тести для кожного методу дії у вашому додатку, і запускати їх без залучення повного циклу запиту для веб-додатку. So many view engines is a plus too, but I strongly recommend to use Razor engine. Тому, так багато двигунів виду це плюс, але я настійно рекомендую використовувати Razor як основний двигун. MVC is lightweight and of course very fast. MVC легкий і, звичайно, дуже швидкий. And last one MVC easy to integrate with any other technology based on ASP.NET. І на останок MVC легко інтегрувати з будь-якою іншою технологією, основаною на ASP.NET. What about strengths of Web Forms, it designed for RAD so you can create any prototype of app faster than on MVC. Що до сильних сторін веб-форм, вони призначені для RAD розробки, щоб ви могли створити будь прототип додатку швидше, ніж на MVC. Web Forms supports an event-driven programming style that is like Windows applications. Web Forms підтримує керований подіями стиль програмування, такий, як в додатках Windows. Many events are available, and they are supported by hundreds of server controls. Багато подій доступні, і вони підтримують сотні серверних елементів управління. Web Forms reduces the complexity of managing state by using view state and server-based controls. Web Forms зменшує складність управління за допомогою стану перегляду та управління на основі сервера Web Forms provides an architecture that combines a page with declarative markup (an .aspx file) with a code-behind file that adds functionality. Web Forms надає архітектуру, яка поєднує сторінку з декларативною розміткою (.aspx файлу) з кодом, який додає функціональність. This structure can make it easy to create pages that implement common tasks, such as responding to user gestures and rendering markup from server code. Ця структура може легко створювати сторінки, які реалізують спільні завдання, такі як відповідати на користувальницькі жести і відображенню розмітку з серверного коду. Rich set of controls. The ASP.NET community has made available hundreds of server controls and components that reduce development time. Багатий набір елементів управління. Спільнота ASP.NET зробила доступними сотні серверних елементів управління і компонентів, які зменшують час розробки. Visual Studio Designer is a very powerful tool and it can be used with many third-party controls. Visual Studio Designer це дуже потужний інструмент, і він може бути використаний з великою кількістю елементів управління сторонніх виробників. And last one it is easy to learn for Win Forms Engineers І останнє його легко вивчити для Win Forms інженерів.
  9. What about weaknesses of both technologies. Що до слабких сторін обох технологій. MVC not based on server events and it difficult to learn for Web Forms developers and MVC has few third-party libraries its bad too, but you can use any web component designed just for web. MVC не ґрунтується на подіях сервера і важко вивчається для Web Forms розробників також MVC має кілька сторонніх бібліотек чого не достатньо, але ви можете використовувати будь-який веб-компонент, призначений тільки для фронтенду. What about weaknesses of Web Forms, UI linked with logic its very difficult to separate work between backend and frontend part and of course it is difficult to test too. Що до слабких сторін веб-форм, UI, пов'язаний з логікою дуже важко відокремити роботу між серверною і фронтенд частинами і, звичайно, це важко перевірити теж. View State and large pages a very big minus for current mobilized world. Стан сторінки для великих сторінок дуже великий мінус для мобілізованого світу.
  10. What about opportunities of both technologies. Що до можливостей обох технологій. MVC was designed to make test-driven development easier. MVC був розроблений, щоб зробити легше розробку тестами. You can create an MVC project and its test project at the same time. Ви можете створити проект MVC і його тестовий проект, в той же час. You can then create unit tests for each action method in your application, and run them without invoking the complete request cycle for a Web application. and MVC reusable technology with better integrability. Ви можете створювати модульні тести для кожного методу дії у вашому додатку, і запускати їх без залучення повного циклу запиту для веб-додатку. також MVC перевикористовувана технологія з хорошою інтегрованістю. Web Forms just allow to create web sites faster by reducing the complexity of managing state by using view state and server-based controls Web Forms просто дозволяє створювати веб-сайти швидше, зменшуючи складність управління станом за допомогою стану сторінки та управління на основі сервера
  11. What about threats of both technologies. Що до загроз обох технологій. MVC more difficult to learn for Win Forms Engineers than Web Forms and sometimes slower in development. MVC складніше для вивчення Win Forms інженерами, ніж веб-форми, а іноді і повільніше в розробці. Web Forms difficult to integrate and difficult to understand for frontend developers. Web Forms важко інтегрувати і важко зрозуміти, для розробників веб-інтерфейсів.
  12. Let`s see what we have by default in MVC projects, its include the following folders: Давайте подивимося, що у нас є за умовчанням в проектах MVC, він включає в себе наступні папки: App_Data, which is the physical store for data. This folder has the same role as it does in ASP.NET Web sites that use Web Forms pages. App_Data, це фізичне сховище для даних. Ця папка має ту ж роль, що й в ASP.NET веб-сайтах, які використовують ASP.NET Web Forms сторінки. Content, which is the recommended location to add content files such as cascading style sheet files, images, and so on. In general, the Content folder is for static files. Content, рекомендується для розташування файлів, такі як каскадні таблиці стилів, зображення і так далі. Загалом, вміст папки для статичних файлів. Controllers, which is the recommended location for controllers. The MVC framework requires the names of all controllers to end with "Controller", such as HomeController, LoginController, or ProductController. Контролери, який є рекомендованим місцем для контролерів. MVC потрібно імена всіх контролерів з завершенням "Controller", таких, як HomeController, LoginController або ProductController. Models, which is provided for classes that represent the application model for your MVC Web application. This folder usually includes code that defines objects and that defines the logic for interaction with the data store. Typically, the actual model objects will be in separate class libraries. However, when you create a new application, you might put classes here and then move them into separate class libraries at a later point in the development cycle. Моделі, передбачені для класів, які представляють модель для веб-додатку MVC. Ця папка, як правило, включає в себе код, що визначає об'єкти і визначає логіку для взаємодії зі сховищем даних. Як правило, фактичні моделі об'єкти будуть перебувати в різних бібліотеках класів. Тим не менш, при створенні нового додатка, ви можете помістити класи тут, а потім перемістити їх в окремі бібліотеки класів на більш пізньому етапі в циклі розробки. Scripts, which is the recommended location for script files that support the application. By default, this folder contains ASP.NET AJAX foundation files and the jQuery library. Сценарії, рекомендоване місце для файлів сценаріїв, які підтримують додаток. За замовчуванням ця папка містить ASP.NET AJAX фундаментні файли і бібліотеки JQuery. Views, which is the recommended location for views. Views use ViewPage (.aspx), ViewUserControl (.ascx), and ViewMasterPage (.master) files, in addition to any other files that are related to rendering views. The Views folder contains a folder for each controller; the folder is named with the controller-name prefix. For example, if you have a controller named HomeController, the Views folder contains a folder named Home. By default, when the ASP.NET MVC framework loads a view, it looks for a ViewPage (.aspx) file that has the requested view name in the Views\controllerName folder. By default, there is also a folder named Shared in the Views folder, which does not correspond to any controller. The Shared folder is used for views that are shared across multiple controllers. For example, you can put the Web application's master page in the Shared folder. Views, рекомендоване місце для виглядів. Views використовує ViewPage (.aspx), ViewUserControl (.ascx), і ViewMasterPage (.master) файли, які пов'язані виглядом. Папка Views містить папку для кожного контролера; папка називається з ім'я префікса контролера . Наприклад, якщо у вас є контролер з ім'ям HomeController, папка Views містить папку з ім'ям додому. За замовчуванням, коли ASP.NET MVC завантажує вигляд, він шукає файл ViewPage (.aspx), який має необхідне ім'я в Views \ controllerName папці. За замовчуванням, існує також папка Загальна для всіх Views, яка не відповідає будь-якому контролеру. Загальна папка використовується для виставки, які є загальними для декількох контролерів. Наприклад, ви можете помістити головну сторінку веб-додатку в загальну папку.
  13. I am going to start by creating a new MVC Framework project in Visual Studio. Select New Project from the File menu to open the New Project dialog. If you select the Web templates in the Visual C# section, you will see the ASP.NET Web Application project template. Я збираюся почати зі створення нового проекту MVC Framework в Visual Studio. Виберіть New Project з меню File, щоб відкрити діалогове вікно New Project. Якщо ви оберете веб-шаблони в C # розділі, ви побачите шаблон проекту веб-додатку ASP.NET. Set the name of the new project to MyFirstMvcApp and click the OK button to continue. You will see another dialog box, which asks you to set the initial content for the ASP.NET project. This is part of the Microsoft initiative to better integrate the different parts of ASP.NET into a set of consistent tools and templates. Задайте ім'я нового проекту в MyFirstMvcApp і натисніть кнопку OK, щоб продовжити. Ви побачите інше діалогове вікно, в якому вас попросять встановити первісний зміст для проекту ASP.NET. Це є частиною ініціативи Microsoft, щоб краще інтегрувати різні частини ASP.NET в набір послідовних інструментів і шаблонів. The templates create projects with different starting points and configurations for features such as authentication, navigation and visual themes. I am going to keep things simple: select the Empty option and check the MVC box in the Add folders and core references section, as shown in the figure. This will create a basic MVC project with minimal predefined content and will be the starting point. Click the OK button to create the new project Шаблони створють проекти з різних стартових точок і конфігурацій функцій, таких як аутентифікація, навігація та візуальні теми. Просто кажучи: виберіть опцію Пусто і встановіть прапорець MVC в нові папці та основні посилання розділу, як показано на малюнку. Це створить базовий проект MVC з мінімальною заданого змісту і буде відправною точкою. Натисніть кнопку ОК, щоб створити новий проект Once Visual Studio creates the project, you will see a number of files and folders displayed in the Solution Explorer window. This is the default project structure for a new MVC project and you will soon understand the purpose of each of the files and folders that Visual Studio creates. Після того, як Visual Studio створює проект, ви побачите кілька файлів і папок, що відображаються у вікні Провідника Рішення. Це структура проекту за замовчуванням для нового проекту MVC, мета кожного з файлів і папок, які створює Visual Studio. You can try to run the application now by selecting Start Debugging from the Debug. Ви можете спробувати запустити додаток, виберіть Почати налагодження з Debug. Because I started with the empty project template, the application does not contain anything to run, so the server generates a 404 Not Found Error. Тому що я почав з пустого шаблону проекту, додаток не містить нічого, щоб працювати, тому сервер генерує 404 Not Found Error. When you are finished, be sure to stop debugging by closing the browser window that shows the error, or by going back to Visual Studio and selecting Stop Debugging from the Debug menu. Коли ви закінчите, не забудьте вийти з налагодження, закривши вікно браузера, який показує помилку або, повертаючись до Visual Studio і вибравши команду Зупинити налагодження з меню Налагодження. As you have just seen, Visual Studio opens the browser to display the project. The default browser is, of course, Internet Explorer, but you can select any browser that you have installed by using the toolbar. Як ви тільки що бачили, Visual Studio відкриває браузер для відображення проекту. Браузер за замовчуванням, звичайно, Internet Explorer, але ви можете вибрати будь-який браузер, який ви встановили за допомогою панелі інструментів I have a range of browsers installed, which I find useful for testing web apps during development. У мене є вибір браузерів, встановлених, які я знаходжу корисним для тестування веб-додатків під час розробки. In MVC architecture, incoming requests are handled by controllers. In ASP.NET MVC, controllers are just C# classes. В архітектурі MVC, вхідні запити обробляються контролерами. У ASP.NET MVC, контролери це всього класи C #. Each public method in a controller is known as an action method, meaning you can invoke it from the Web via some URL to perform an action. The MVC convention is to put controllers in the Controllers folder, which Visual Studio created when it set up the project. Кожен публічний метод в контролері відомий як метод дії, тобто ви можете викликати його з Web за допомогою якоїсь URL, щоб виконати дію. Конвенція MVC, говорить щоб покласти контролери в папку Controllers, який Visual Studio створює, коли вона створює проект. To add a controller to the project, right-click the Controllers folder in the Visual Studio Solution Explorer window and choose Add and then Controller from the pop-up menus. Щоб додати контролер проекту, клацніть правою кнопкою миші папку Controllers у вікні Visual Studio Оглядач рішень і виберіть Додати, а потім контролер від спливаючих меню. When the Add Scaffold dialog appears, select the MVC 5 Controller – Empty option. Коли з'явиться діалогове вікно Додайте Scaffold, виберіть MVC контролер 5 - Пустий варіант. The Add Controller dialog will appear. Set the name to HomeController and click the Add button. There are several conventions represented in this name: names given to controllers should indicate their purpose; the default controller is called Home and controller names have the suffix Controller. З'явиться діалогове вікно Додати контролер. Задайте ім'я для HomeController і натисніть кнопку Додати. Є кілька конвенцій, представлені в цьому імені: імена, дані контролерів повинні вказати мету; Контролер за замовчуванням називається Home й імена контролера мають суфікс Controller. Visual Studio will create a new C# file in the Controllers folder called HomeController.cs and open it for editing. I have listed the default contents that Visual Studio puts into the class file. Visual Studio створить новий C # файл в папці Контролери названий HomeController.cs і відкрити його для редагування. Я перерахував вміст за замовчуванням, Visual Studio поміщає у файл класу. You can see that the class is called HomeController and it is derived from the Controller class, which is found in the System.Web.Mvc namespace. Як Ви можете бачити, що клас називається HomeController і він є похідним від класу Controller, який знаходиться в просторі імен System.Web.Mvc. A good way of getting started with MVC is to make a couple of simple changes to the controller class. Edit the code in the HomeController.cs file. Хороший спосіб почати роботу з MVC, щоб зробити пару простих змін в класі контролера. Змініть код у файлі HomeController.cs. I have highlighted the statements that have changed so they are easier to see. Я виділив заяви, які були змінені, щоб легше побачити їх. These changes don’t have a dramatic effect, but they make for a nice demonstration. I have changed the action method called Index so that it returns the string “Hello World”. Run the project again by selecting Start Debugging from the Visual Studio Debug menu. The browser will display the result of the Index action method. Ці зміни не мають величезний вплив, але вони роблять хорошу демонстрацію. Я змінив метод дії індекс, так що він повертає рядок "Hello World". Виконайте проект ще раз, вибравши Start Debugging з меню Debug Visual Studio. Браузер відобразить результат методу.
  14. Routing is one of the primary aspects of the MVC framework which makes MVC what it is. Маршрутизація є одним з основних аспектів в рамках MVC. While that is possibly over-simplifying, the routing framework is where the MVC philosophy of "convention over configuration" is readily apparent. Хоча це, можливо, більш-спрощенню, маршрутизація це філософія MVC "конвенції по конфігурації" є очевидними. Routing also represents one of the more potentially confounding aspects of MVC. Маршрутизація також являє собою один з найбільш потенційно важких аспектів MVC. Once we move beyond the basics, as our applications become more complex, it generally becomes necessary to customize our routes beyond the simple flexible default MVC route. Після того, як ми вийшли за рамки основ, так як наші програми стають більш складними, як правило, стає необхідним, щоб налаштувати наші маршрути за рамки простого маршруту за замовчуванням MVC. Route customization is a complex topic. We have entire module for routing. Налаштування маршрутів складна тема. У нас є окремий модуль для маршрутизації.
  15. Most of the current major browsers limit the number of simultaneous connections per each hostname to six. Більшість нинішніх браузерів обмежує кількість одночасних підключень на кожому компютері до шести. That means that while six requests are being processed, additional requests for assets on a host will be queued by the browser. Це означає, що в той час як шість запитів обробляється, додаткові запити для файлів на хості будуть поставлені в чергу в браузері. Bundling is a new feature in ASP.NET 4.5 that makes it easy to combine or bundle multiple files into a single file. Комплектація є нова функція в ASP.NET 4.5, що робить його легко комбінованим або об'єднувати декілька файлів в один файл. You can create CSS, JavaScript and other bundles. Fewer files means fewer HTTP requests and that can improve first page load  performance. Ви можете створити CSS, JavaScript та інші пакети. Менші файли означає менше запитів HTTP і може поліпшити перше завантаження сторінки. Minification performs a variety of different code optimizations to scripts or css, such as removing unnecessary white space and comments and shortening variable names to one character. Minification виконує різні оптимізації коду в сценаріях або CSS, такі як видалення непотрібних пробілів і коментарів і скорочення імен до одного символу. Minification is a complex topic. We will learn it in performance module. Minification це складна тема. Ми будемо вивчати це в модулі продуктивності.
  16. I will show you big commercial project nopCommerce based on ASP.NET MVC. Я покажу вам великий комерційний проект nopCommerce на основі ASP.NET MVC. nopCommerce is an open source ecommerce software that contains both a catalog frontend and an administration tool backend. nopCommerce це відкрите програмне забезпечення електронної комерції, яке містить як каталог фронтенд і бекенда та інструмент адміністрування. nopCommerce is a fully customizable shopping cart. It's stable and highly usable.  nopCommerce це повністю настроюваний інтернет магазин. Це стабільний і дуже зручний продукт. Lets download its code from codeplex and learn how it is working. Давайте завантажимо його код з CodePlex і дізнаємося, як він працює. As you can see it’s a large project with pluggable system. Як ви можете бачити, що це великий проект. It implements three levels architecture with Data, Services and Presentation layers. Він реалізує три рівні архітектури з даними, послуги та презентацію. Let’s see what we have at plugins for example Nop.Plugin.SMS.Verizon. Давайте подивимося, що ми маємо в плагінах Наприклад Nop.Plugin.SMS.Verizon. It looks like a small MVC application at controller we can see no default constructors so it managed by dependency injection. Це виглядає як невеликий MVC додаток в контролері ми не можемо побачити конструктори не за умовчанням, це реалізовано за допомогою ін'єкції залежностей. Lets look at presentation layer, it contains controllers and views too it because they need core features when no plugins installed. Давайте подивимося на рівень представлення, він містить контролери та подання теж, тому що вони повинні основні функції, коли немає встановлених плагінів. Also it use fluent validation for models its one of the best validation frameworks for MVC Також його використовують для перевірки для моделей та структур для MVC
  17. You may have heard the expression "fat model, skinny controller" when talking about MVC frameworks. Ви, можливо, чули вислів "жирна модель, худий контролер", коли мова йде про MVC. I'm going to try and convince you that why that's a misleading and potentially dangerous rule to follow. Я збираюся спробувати переконати вас, чому це вводить в оману і потенційно небезпечне правило для наслідування. MVC frameworks provide a pretty good way of separating the various concerns of your application. MVC забезпечує дуже хороший спосіб розділення різних проблем вашого додатку. Presentation goes in the view, business logic goes in the model and the controller stitches everything together, right? Презентація йде у view, бізнес-логіка йде в модель і контролер все обєднує, вірно? The main problem that I come across is that developers think that all of their code has to go into a model, view or controller. Основна проблема, на яку я наткнувся, що розробники думають, що всі їхні коди повинені піти в моделі, подання або контролер. MVC is a design pattern, but it's a very high-level, architectural pattern. MVC це шаблон, але це дуже високого рівня, архітектурний шаблон. That gives you room to introduce lower-level design patterns in your code. Це дає Вам можливість представити шаблони проектування нижнього рівня в коді. If you shift your thinking from limiting yourself to three main class types, you suddenly re-open the whole world of software design. Якщо ви переносите ваше мислення і не обмежуєте себе трьома основних типами класів, ви раптом відкриєте цілий світ розробки програмного забезпечення.
  18. It's time for homework Це час для домашніх завдань Could you just implement simple book tracker with list of books and CRUD operations for it on ASP.NET MVC with using default Views templates for models. Чи могли б ви просто реалізувати простий трекер книг зі списком книг і CRUD операцій для них на ASP.NET MVC за допомогою шаблонів за замовчуванням Views для моделей. Of course without data persistence if you are unfamiliar with Entity Framework. Звичайно без завзятості даних, якщо ви не знайомі з Entity Framework. If you encounter problems, contact me Якщо ви стикаєтеся з проблемами, зв'яжіться зі мною
  19. If you want to get more advanced information about ASP.NET MVC 5. Якщо ви хочете отримати більш просунуту інформацію про ASP.NET MVC 5. I will recommend to you this three bestsellers. Я рекомендую вам три бестселери. You can buy one or use from SoftServe books library. Ви можете купити один або використовувати з SoftServe бібліотеки. [links] Pro ASP.NET MVC 5 - http://www.apress.com/9781430265290 Pro ASP.NET MVC 5 (paper book in SoftServe library) - http://booklibrary.softserveinc.com/Books/PreviewBook?bookId=1473 Professional ASP.NET MVC 5 - http://www.wrox.com/WileyCDA/WroxTitle/Professional-ASP-NET-MVC-5.productCd-1118794753.html Programming Microsoft ASP.NET MVC - https://www.microsoftpressstore.com/store/programming-microsoft-asp.net-mvc-9780735680944
  20. My contacts are here. Мої контакти тут. So, if you have some questions you can send me it on e-mail. Так що, якщо у вас є питання, ви можете надіслати мені його на електронну пошту. I will be happy to help you. Я буду радий допомогти вам. Thank you very much for watching. Bye. Спасибі вам велике за перегляд. До Побачення.