SlideShare a Scribd company logo
C# ASP.NET-MVC4 
Frameworks 
101 
Sept 06, 2014 
By Rich Helton
ASP.NET MVC 
Is Microsoft's framework in support of the 
Model-View-Controller, the most popular 
design pattern in the world for rapid development. 
Entity Frameworks are used heavily with 
ASP.NET MVC, but they are a completely separate 
framework that are used independently as well.
MVC Components
ASP.NET MVC benefits 
Enables Test-Driven Development (TDD). 
Provides rapid development for developing 
ASP.NET 
in Visual Studio. 
Supports IIS backend code for enhanced 
functionality. 
Provides clean separation of concerns(SoC) 
between different components.
Enhanced Software Quality 
ASP.NET MVC supports the following features for 
quality: 
– Security – Has built-in security. 
– Extensibility – many extensible frameworks. 
– Testability – supports unit testing
What is TDD? 
Test-Driven Development (TDD) is a software 
development process that relies on the 
repetition of a very short development cycle 
by utilizing automated test cases that defines 
new functionality and programming to the passing 
these tests.
Installation 
We can use the 
http://www.microsoft.com/web/downloads/platform.aspx
Through the web installer 
We can install some pieces to use through WPI: 
– SQL Express LocalDB Edition 11.0 for data 
– Visual Studio Express 2012 for coding 
– ASP.NET MVC 4 the framework 
– IIS Express for running and deployment
Creating a MVC 4 project
There are several templates
The Empty template 
The Empty template does not generate any sample 
models and controllers:
The Basic template 
The Basic template does not generate any sample 
models and controllers, but some starter pages:
The Internet template 
The Internet template now offers basic account views, 
controllers and models, that can be plugged into a database.
Internet template tests 
The Internet template now offers Unit testing into its home 
controller as well that was generated.
The Intranet template 
The Intranet template is similar to the Internet template, 
except it is gearing its authentication towards Windows 
authentication. There are no separate account pieces, 
but a readme.txt describing how to setup authentication in IIS.
Internet basic 
walkthrough 
Sept 06, 2014 
By Rich Helton
The Internet template 
Lets start with an application that we call InternetMVC4App:
Running the App 
Running the app from Visual Studio already gives us pieces:
Its all about routing 
We will route through the pages, the route begins with the 
RouteConfig.cs, this defines the starting action to be the 
Index function in the HomeController.cs:
Controllers are always first 
The Controller function is first, in this case, the Index function 
that returns values, in the form of models, for the pages. 
A controller can take in a HTTP request or model as needed.
Controllers call Views 
The Controller will call views, here we have a layout for all 
pages that put in the scripts.
Starting a Register 
Clicking on the Register link will bring us to the register 
function 
in the AccountController.cs by the link 
<li><a href="/Account/Register" id="registerLink">Register</a></li>
Register Controller 
The link will call the Register function: 
Which in turn will call the Register View:
Register View 
The Register View will populate the RegisterModel with 
username and password to pass to a Register function 
with the model:
Register Model 
The associated RegisterModel, notice the data annotations 
to provide validation on the data:
Register data annotation 
The data annotation ensures that the password is at 
least 6 characters:
Register function note 
After a successful register, we will be logged in by way of the 
Register(RegisterModel model). 
This is an HttpPost from the page, meaning data is posted.
Just a touch of Controller 
security 
Did you notice the [ValidateAntiForgeryToken], which is 
available functionality to block cross-site request forgeries 
and raise an error if the cookie value doesn't match the form 
value. 
There is a lot of security and validation functionality 
that MVC 4 provides.
The membership 
Within the App_Data directory of this project is an MDF 
data file that contains the basic tables for registration. 
The values will be added as usernames are added:
Defining the default 
connection 
Within the Web.config is where many of the configurations 
are defined, including the DefaultConnection connection 
string:
Setting the 
Membership 
database 
Sept 06, 2014 
By Rich Helton
Run aspnet_regsql.exe 
Navigate to the following directory on the server: 
C:WindowsMicrosoft.NETFrameworkv4.0.30319. 
Locate "aspnet_regsql.exe", right click and run as 
administrator.
Select the SQLExpress DB 
We can select the local DB of SQLExpress.
The aspnetdb is created 
An aspnetdb database will be created to store users and roles.
Change the connection string 
We modify the connection string in web.config to point 
at SQLEXPRESS. See 
http://msdn.microsoft.com/en-us/ 
library/jj653752(v=vs.110).aspx
Register the user again 
We need to add a user to the new tables through the 
registration process.
The user is added in 
SQLEXPRESS 
The new user is added to SQLExpress.
Adding Controllers 
Sept 06, 2014 
By Rich Helton
So far... 
Just a note, that so far, we have done almost no coding 
for our solution, but we have functionality for users and 
registration, as well as some basic pages.
We can add various 
components 
We can add specific components using Visual Studio wizards 
for Views and Controllers.
Adding a controller 
We get several templates to chose from when adding a 
controller
Controller Templates 
 Empty MVC controller 
 MVC controller with read/write actions and views, 
using Entity Framework 
 MVC controller with empty read/write actions 
 Empty API controller 
 API controller with read/write actions and views, 
using Entity Framework 
 API controller with empty read/write actions
Empty controller 
Just provides an Index() action
MVC read/write actions 
Provides Index(), Create(), Edit(), and Delete() actions.
MVC with entities 
We need to have an EF dbcontext and models define. 
See 
http://www.slideshare.net/rhelton_1/entity-frameworks101
Address Table entity model 
We add an Address table
MVC Entity Controller 
We can now use the Controller with entities
MVC read/write actions with 
entities 
Provides Index(), Create(), Edit(), and Delete() actions, 
now with an Address table in these functions.
Showing the access to the 
Address table 
We can see the Address table being accessed in the actions.
Views were added 
Views to match these actions to return the entities were 
added by default
We can add the 
MVCEntities... 
We can add these views that were created to the 
_Layout.cshtml.
Which will add to the layout 
The _Layout.cshtml will show the link.
The Index page 
This Index page that was generated is already functional that 
we see when clicking the link. We didn't code much for this.
Empty WebApi controller 
The empty web API controller will create a controller derived 
from the ApiController, which returns serialized data, 
such as a string, instead of the Controller interface which 
returns action results for views.
API controller with 
read/writes 
This will create a sample template for Get(), Put(), Post( ), 
and Delete() functions using strings.
API controller with entity 
read/writes 
This will create a sample, based on the entity selected, 
the template for Get(), Put(), Post( ), and Delete() functions 
using the entity, in this case the Address.
So far.... 
So far, we have added a lot of controllers, 
some who connect and pull data from the database. 
We still haven't coded much.
Adding Views 
Sept 06, 2014 
By Rich Helton
We can add Views 
We can create a view to automatically 
populate with a template of a model for various actions...
Views 
When we create the view, 
it is just the view, and 
while it may put model information in the view, 
the controller still has to be created to match the view.
Done for now, more 
to follow 
Sept 06, 2014 
By Rich Helton
Ad

More Related Content

What's hot (20)

C# Security Testing and Debugging
C# Security Testing and DebuggingC# Security Testing and Debugging
C# Security Testing and Debugging
Rich Helton
 
Spring hibernate tutorial
Spring hibernate tutorialSpring hibernate tutorial
Spring hibernate tutorial
Rohit Jagtap
 
Spring IOC advantages and developing spring application sample
Spring IOC advantages and developing spring application sample Spring IOC advantages and developing spring application sample
Spring IOC advantages and developing spring application sample
Sunil kumar Mohanty
 
Building web applications with Java & Spring
Building web applications with Java & SpringBuilding web applications with Java & Spring
Building web applications with Java & Spring
David Kiss
 
Spring boot jpa
Spring boot jpaSpring boot jpa
Spring boot jpa
Hamid Ghorbani
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
Hamid Ghorbani
 
Spring core
Spring coreSpring core
Spring core
Harshit Choudhary
 
Reactjs Basics
Reactjs BasicsReactjs Basics
Reactjs Basics
Hamid Ghorbani
 
Introduction To CodeIgniter
Introduction To CodeIgniterIntroduction To CodeIgniter
Introduction To CodeIgniter
Muhammad Hafiz Hasan
 
Spring MVC framework
Spring MVC frameworkSpring MVC framework
Spring MVC framework
Mohit Gupta
 
Rest web service
Rest web serviceRest web service
Rest web service
Hamid Ghorbani
 
Spring aop
Spring aopSpring aop
Spring aop
Hamid Ghorbani
 
Leverage Hibernate and Spring Features Together
Leverage Hibernate and Spring Features TogetherLeverage Hibernate and Spring Features Together
Leverage Hibernate and Spring Features Together
Edureka!
 
Mongo db
Mongo dbMongo db
Mongo db
Gyanendra Yadav
 
Spring MVC Framework
Spring MVC FrameworkSpring MVC Framework
Spring MVC Framework
Hùng Nguyễn Huy
 
Annotation-Based Spring Portlet MVC
Annotation-Based Spring Portlet MVCAnnotation-Based Spring Portlet MVC
Annotation-Based Spring Portlet MVC
John Lewis
 
Spring MVC
Spring MVCSpring MVC
Spring MVC
Aaron Schram
 
CodeIgniter 101 Tutorial
CodeIgniter 101 TutorialCodeIgniter 101 Tutorial
CodeIgniter 101 Tutorial
Konstantinos Magarisiotis
 
Angular tutorial
Angular tutorialAngular tutorial
Angular tutorial
Rohit Gupta
 
Different Types of Containers in Spring
Different Types of Containers in Spring Different Types of Containers in Spring
Different Types of Containers in Spring
Sunil kumar Mohanty
 
C# Security Testing and Debugging
C# Security Testing and DebuggingC# Security Testing and Debugging
C# Security Testing and Debugging
Rich Helton
 
Spring hibernate tutorial
Spring hibernate tutorialSpring hibernate tutorial
Spring hibernate tutorial
Rohit Jagtap
 
Spring IOC advantages and developing spring application sample
Spring IOC advantages and developing spring application sample Spring IOC advantages and developing spring application sample
Spring IOC advantages and developing spring application sample
Sunil kumar Mohanty
 
Building web applications with Java & Spring
Building web applications with Java & SpringBuilding web applications with Java & Spring
Building web applications with Java & Spring
David Kiss
 
Spring MVC framework
Spring MVC frameworkSpring MVC framework
Spring MVC framework
Mohit Gupta
 
Leverage Hibernate and Spring Features Together
Leverage Hibernate and Spring Features TogetherLeverage Hibernate and Spring Features Together
Leverage Hibernate and Spring Features Together
Edureka!
 
Annotation-Based Spring Portlet MVC
Annotation-Based Spring Portlet MVCAnnotation-Based Spring Portlet MVC
Annotation-Based Spring Portlet MVC
John Lewis
 
Angular tutorial
Angular tutorialAngular tutorial
Angular tutorial
Rohit Gupta
 
Different Types of Containers in Spring
Different Types of Containers in Spring Different Types of Containers in Spring
Different Types of Containers in Spring
Sunil kumar Mohanty
 

Similar to AspMVC4 start101 (20)

Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4
Rich Helton
 
Getting Started with Zend Framework
Getting Started with Zend FrameworkGetting Started with Zend Framework
Getting Started with Zend Framework
Juan Antonio
 
MVC 4
MVC 4MVC 4
MVC 4
Vasilios Kuznos
 
Mvc summary
Mvc summaryMvc summary
Mvc summary
Muhammad Younis
 
8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated
8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated
8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated
dioduong345
 
Asp.Net MVC Intro
Asp.Net MVC IntroAsp.Net MVC Intro
Asp.Net MVC Intro
Stefano Paluello
 
Enterprise Level Application Architecture with Web APIs using Entity Framewor...
Enterprise Level Application Architecture with Web APIs using Entity Framewor...Enterprise Level Application Architecture with Web APIs using Entity Framewor...
Enterprise Level Application Architecture with Web APIs using Entity Framewor...
Akhil Mittal
 
Murach : How to develop a single-page MVC web
Murach : How to develop a single-page MVC web Murach : How to develop a single-page MVC web
Murach : How to develop a single-page MVC web
MahmoudOHassouna
 
MVC Interview Questions PDF By ScholarHat
MVC Interview Questions PDF By ScholarHatMVC Interview Questions PDF By ScholarHat
MVC Interview Questions PDF By ScholarHat
Scholarhat
 
ASP.NET Identity
ASP.NET IdentityASP.NET Identity
ASP.NET Identity
Suzanne Simmons
 
LearningMVCWithLINQToSQL
LearningMVCWithLINQToSQLLearningMVCWithLINQToSQL
LearningMVCWithLINQToSQL
Akhil Mittal
 
ASP.NET MVC 5 Building Your First Web Application (A Beginner S Guide
ASP.NET MVC 5  Building Your First Web Application (A Beginner S GuideASP.NET MVC 5  Building Your First Web Application (A Beginner S Guide
ASP.NET MVC 5 Building Your First Web Application (A Beginner S Guide
Alicia Buske
 
Introduction-to-ASPNET-Core ASP.NET.pptx
Introduction-to-ASPNET-Core ASP.NET.pptxIntroduction-to-ASPNET-Core ASP.NET.pptx
Introduction-to-ASPNET-Core ASP.NET.pptx
MAHERMOHAMED27
 
ChircuVictor StefircaMadalin rad_aspmvc3_wcf_vs2010
ChircuVictor StefircaMadalin rad_aspmvc3_wcf_vs2010ChircuVictor StefircaMadalin rad_aspmvc3_wcf_vs2010
ChircuVictor StefircaMadalin rad_aspmvc3_wcf_vs2010
vchircu
 
Introduction To Mvc
Introduction To MvcIntroduction To Mvc
Introduction To Mvc
Volkan Uzun
 
Code igniter - A brief introduction
Code igniter - A brief introductionCode igniter - A brief introduction
Code igniter - A brief introduction
Commit University
 
MVC Training Part 2
MVC Training Part 2MVC Training Part 2
MVC Training Part 2
Lee Englestone
 
MVC ppt presentation
MVC ppt presentationMVC ppt presentation
MVC ppt presentation
Bhavin Shah
 
Model view controller (mvc)
Model view controller (mvc)Model view controller (mvc)
Model view controller (mvc)
M Ahsan Khan
 
ASP.NET MVC3 RAD
ASP.NET MVC3 RADASP.NET MVC3 RAD
ASP.NET MVC3 RAD
Mădălin Ștefîrcă
 
Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4Overview of CSharp MVC3 and EF4
Overview of CSharp MVC3 and EF4
Rich Helton
 
Getting Started with Zend Framework
Getting Started with Zend FrameworkGetting Started with Zend Framework
Getting Started with Zend Framework
Juan Antonio
 
8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated
8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated
8-9-10. ASP_updated8-9-10. ASP_updated8-9-10. ASP_updated
dioduong345
 
Enterprise Level Application Architecture with Web APIs using Entity Framewor...
Enterprise Level Application Architecture with Web APIs using Entity Framewor...Enterprise Level Application Architecture with Web APIs using Entity Framewor...
Enterprise Level Application Architecture with Web APIs using Entity Framewor...
Akhil Mittal
 
Murach : How to develop a single-page MVC web
Murach : How to develop a single-page MVC web Murach : How to develop a single-page MVC web
Murach : How to develop a single-page MVC web
MahmoudOHassouna
 
MVC Interview Questions PDF By ScholarHat
MVC Interview Questions PDF By ScholarHatMVC Interview Questions PDF By ScholarHat
MVC Interview Questions PDF By ScholarHat
Scholarhat
 
LearningMVCWithLINQToSQL
LearningMVCWithLINQToSQLLearningMVCWithLINQToSQL
LearningMVCWithLINQToSQL
Akhil Mittal
 
ASP.NET MVC 5 Building Your First Web Application (A Beginner S Guide
ASP.NET MVC 5  Building Your First Web Application (A Beginner S GuideASP.NET MVC 5  Building Your First Web Application (A Beginner S Guide
ASP.NET MVC 5 Building Your First Web Application (A Beginner S Guide
Alicia Buske
 
Introduction-to-ASPNET-Core ASP.NET.pptx
Introduction-to-ASPNET-Core ASP.NET.pptxIntroduction-to-ASPNET-Core ASP.NET.pptx
Introduction-to-ASPNET-Core ASP.NET.pptx
MAHERMOHAMED27
 
ChircuVictor StefircaMadalin rad_aspmvc3_wcf_vs2010
ChircuVictor StefircaMadalin rad_aspmvc3_wcf_vs2010ChircuVictor StefircaMadalin rad_aspmvc3_wcf_vs2010
ChircuVictor StefircaMadalin rad_aspmvc3_wcf_vs2010
vchircu
 
Introduction To Mvc
Introduction To MvcIntroduction To Mvc
Introduction To Mvc
Volkan Uzun
 
Code igniter - A brief introduction
Code igniter - A brief introductionCode igniter - A brief introduction
Code igniter - A brief introduction
Commit University
 
MVC ppt presentation
MVC ppt presentationMVC ppt presentation
MVC ppt presentation
Bhavin Shah
 
Model view controller (mvc)
Model view controller (mvc)Model view controller (mvc)
Model view controller (mvc)
M Ahsan Khan
 
Ad

More from Rich Helton (15)

NServicebus WCF Integration 101
NServicebus WCF Integration 101NServicebus WCF Integration 101
NServicebus WCF Integration 101
Rich Helton
 
Salesforce Intro
Salesforce IntroSalesforce Intro
Salesforce Intro
Rich Helton
 
First Steps in Android
First Steps in AndroidFirst Steps in Android
First Steps in Android
Rich Helton
 
NServiceBus
NServiceBusNServiceBus
NServiceBus
Rich Helton
 
Python For Droid
Python For DroidPython For Droid
Python For Droid
Rich Helton
 
Spring Roo Rev005
Spring Roo Rev005Spring Roo Rev005
Spring Roo Rev005
Rich Helton
 
Python Final
Python FinalPython Final
Python Final
Rich Helton
 
Adobe Flex4
Adobe Flex4 Adobe Flex4
Adobe Flex4
Rich Helton
 
C#Web Sec Oct27 2010 Final
C#Web Sec Oct27 2010 FinalC#Web Sec Oct27 2010 Final
C#Web Sec Oct27 2010 Final
Rich Helton
 
Jira Rev002
Jira Rev002Jira Rev002
Jira Rev002
Rich Helton
 
Sql Injection and Entity Frameworks
Sql Injection and Entity FrameworksSql Injection and Entity Frameworks
Sql Injection and Entity Frameworks
Rich Helton
 
Web Application Firewall intro
Web Application Firewall introWeb Application Firewall intro
Web Application Firewall intro
Rich Helton
 
Java Web Security Class
Java Web Security ClassJava Web Security Class
Java Web Security Class
Rich Helton
 
Secure Ftp Java Style Rev004
Secure Ftp  Java Style Rev004Secure Ftp  Java Style Rev004
Secure Ftp Java Style Rev004
Rich Helton
 
Intro Java Rev010
Intro Java Rev010Intro Java Rev010
Intro Java Rev010
Rich Helton
 
NServicebus WCF Integration 101
NServicebus WCF Integration 101NServicebus WCF Integration 101
NServicebus WCF Integration 101
Rich Helton
 
Salesforce Intro
Salesforce IntroSalesforce Intro
Salesforce Intro
Rich Helton
 
First Steps in Android
First Steps in AndroidFirst Steps in Android
First Steps in Android
Rich Helton
 
Python For Droid
Python For DroidPython For Droid
Python For Droid
Rich Helton
 
Spring Roo Rev005
Spring Roo Rev005Spring Roo Rev005
Spring Roo Rev005
Rich Helton
 
C#Web Sec Oct27 2010 Final
C#Web Sec Oct27 2010 FinalC#Web Sec Oct27 2010 Final
C#Web Sec Oct27 2010 Final
Rich Helton
 
Sql Injection and Entity Frameworks
Sql Injection and Entity FrameworksSql Injection and Entity Frameworks
Sql Injection and Entity Frameworks
Rich Helton
 
Web Application Firewall intro
Web Application Firewall introWeb Application Firewall intro
Web Application Firewall intro
Rich Helton
 
Java Web Security Class
Java Web Security ClassJava Web Security Class
Java Web Security Class
Rich Helton
 
Secure Ftp Java Style Rev004
Secure Ftp  Java Style Rev004Secure Ftp  Java Style Rev004
Secure Ftp Java Style Rev004
Rich Helton
 
Intro Java Rev010
Intro Java Rev010Intro Java Rev010
Intro Java Rev010
Rich Helton
 
Ad

Recently uploaded (20)

Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025
kashifyounis067
 
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage DashboardsAdobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
BradBedford3
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New VersionPixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
saimabibi60507
 
Solidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license codeSolidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license code
aneelaramzan63
 
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdfMicrosoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
TechSoup
 
Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
steaveroggers
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 
How to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud PerformanceHow to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud Performance
ThousandEyes
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025
kashifyounis067
 
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage DashboardsAdobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
BradBedford3
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New VersionPixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
saimabibi60507
 
Solidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license codeSolidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license code
aneelaramzan63
 
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdfMicrosoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
TechSoup
 
Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
steaveroggers
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 
How to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud PerformanceHow to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud Performance
ThousandEyes
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 

AspMVC4 start101

  • 1. C# ASP.NET-MVC4 Frameworks 101 Sept 06, 2014 By Rich Helton
  • 2. ASP.NET MVC Is Microsoft's framework in support of the Model-View-Controller, the most popular design pattern in the world for rapid development. Entity Frameworks are used heavily with ASP.NET MVC, but they are a completely separate framework that are used independently as well.
  • 4. ASP.NET MVC benefits Enables Test-Driven Development (TDD). Provides rapid development for developing ASP.NET in Visual Studio. Supports IIS backend code for enhanced functionality. Provides clean separation of concerns(SoC) between different components.
  • 5. Enhanced Software Quality ASP.NET MVC supports the following features for quality: – Security – Has built-in security. – Extensibility – many extensible frameworks. – Testability – supports unit testing
  • 6. What is TDD? Test-Driven Development (TDD) is a software development process that relies on the repetition of a very short development cycle by utilizing automated test cases that defines new functionality and programming to the passing these tests.
  • 7. Installation We can use the http://www.microsoft.com/web/downloads/platform.aspx
  • 8. Through the web installer We can install some pieces to use through WPI: – SQL Express LocalDB Edition 11.0 for data – Visual Studio Express 2012 for coding – ASP.NET MVC 4 the framework – IIS Express for running and deployment
  • 9. Creating a MVC 4 project
  • 10. There are several templates
  • 11. The Empty template The Empty template does not generate any sample models and controllers:
  • 12. The Basic template The Basic template does not generate any sample models and controllers, but some starter pages:
  • 13. The Internet template The Internet template now offers basic account views, controllers and models, that can be plugged into a database.
  • 14. Internet template tests The Internet template now offers Unit testing into its home controller as well that was generated.
  • 15. The Intranet template The Intranet template is similar to the Internet template, except it is gearing its authentication towards Windows authentication. There are no separate account pieces, but a readme.txt describing how to setup authentication in IIS.
  • 16. Internet basic walkthrough Sept 06, 2014 By Rich Helton
  • 17. The Internet template Lets start with an application that we call InternetMVC4App:
  • 18. Running the App Running the app from Visual Studio already gives us pieces:
  • 19. Its all about routing We will route through the pages, the route begins with the RouteConfig.cs, this defines the starting action to be the Index function in the HomeController.cs:
  • 20. Controllers are always first The Controller function is first, in this case, the Index function that returns values, in the form of models, for the pages. A controller can take in a HTTP request or model as needed.
  • 21. Controllers call Views The Controller will call views, here we have a layout for all pages that put in the scripts.
  • 22. Starting a Register Clicking on the Register link will bring us to the register function in the AccountController.cs by the link <li><a href="/Account/Register" id="registerLink">Register</a></li>
  • 23. Register Controller The link will call the Register function: Which in turn will call the Register View:
  • 24. Register View The Register View will populate the RegisterModel with username and password to pass to a Register function with the model:
  • 25. Register Model The associated RegisterModel, notice the data annotations to provide validation on the data:
  • 26. Register data annotation The data annotation ensures that the password is at least 6 characters:
  • 27. Register function note After a successful register, we will be logged in by way of the Register(RegisterModel model). This is an HttpPost from the page, meaning data is posted.
  • 28. Just a touch of Controller security Did you notice the [ValidateAntiForgeryToken], which is available functionality to block cross-site request forgeries and raise an error if the cookie value doesn't match the form value. There is a lot of security and validation functionality that MVC 4 provides.
  • 29. The membership Within the App_Data directory of this project is an MDF data file that contains the basic tables for registration. The values will be added as usernames are added:
  • 30. Defining the default connection Within the Web.config is where many of the configurations are defined, including the DefaultConnection connection string:
  • 31. Setting the Membership database Sept 06, 2014 By Rich Helton
  • 32. Run aspnet_regsql.exe Navigate to the following directory on the server: C:WindowsMicrosoft.NETFrameworkv4.0.30319. Locate "aspnet_regsql.exe", right click and run as administrator.
  • 33. Select the SQLExpress DB We can select the local DB of SQLExpress.
  • 34. The aspnetdb is created An aspnetdb database will be created to store users and roles.
  • 35. Change the connection string We modify the connection string in web.config to point at SQLEXPRESS. See http://msdn.microsoft.com/en-us/ library/jj653752(v=vs.110).aspx
  • 36. Register the user again We need to add a user to the new tables through the registration process.
  • 37. The user is added in SQLEXPRESS The new user is added to SQLExpress.
  • 38. Adding Controllers Sept 06, 2014 By Rich Helton
  • 39. So far... Just a note, that so far, we have done almost no coding for our solution, but we have functionality for users and registration, as well as some basic pages.
  • 40. We can add various components We can add specific components using Visual Studio wizards for Views and Controllers.
  • 41. Adding a controller We get several templates to chose from when adding a controller
  • 42. Controller Templates  Empty MVC controller  MVC controller with read/write actions and views, using Entity Framework  MVC controller with empty read/write actions  Empty API controller  API controller with read/write actions and views, using Entity Framework  API controller with empty read/write actions
  • 43. Empty controller Just provides an Index() action
  • 44. MVC read/write actions Provides Index(), Create(), Edit(), and Delete() actions.
  • 45. MVC with entities We need to have an EF dbcontext and models define. See http://www.slideshare.net/rhelton_1/entity-frameworks101
  • 46. Address Table entity model We add an Address table
  • 47. MVC Entity Controller We can now use the Controller with entities
  • 48. MVC read/write actions with entities Provides Index(), Create(), Edit(), and Delete() actions, now with an Address table in these functions.
  • 49. Showing the access to the Address table We can see the Address table being accessed in the actions.
  • 50. Views were added Views to match these actions to return the entities were added by default
  • 51. We can add the MVCEntities... We can add these views that were created to the _Layout.cshtml.
  • 52. Which will add to the layout The _Layout.cshtml will show the link.
  • 53. The Index page This Index page that was generated is already functional that we see when clicking the link. We didn't code much for this.
  • 54. Empty WebApi controller The empty web API controller will create a controller derived from the ApiController, which returns serialized data, such as a string, instead of the Controller interface which returns action results for views.
  • 55. API controller with read/writes This will create a sample template for Get(), Put(), Post( ), and Delete() functions using strings.
  • 56. API controller with entity read/writes This will create a sample, based on the entity selected, the template for Get(), Put(), Post( ), and Delete() functions using the entity, in this case the Address.
  • 57. So far.... So far, we have added a lot of controllers, some who connect and pull data from the database. We still haven't coded much.
  • 58. Adding Views Sept 06, 2014 By Rich Helton
  • 59. We can add Views We can create a view to automatically populate with a template of a model for various actions...
  • 60. Views When we create the view, it is just the view, and while it may put model information in the view, the controller still has to be created to match the view.
  • 61. Done for now, more to follow Sept 06, 2014 By Rich Helton