SlideShare a Scribd company logo
1 of 22
Download to read offline
ASP.NET MVC
Úvod do technologie
Co to je ASP.NET MVC?
Technologie pro tvorbu sofistikovaných webových aplikací.
● Založeno na návrhovém vzoru Model-View-Controller
● Umožňuje rychlý agilní vývoj
● Využití nejnovějších webových standardů
ASP.NET MVC 5 vs. ASP.NET Core MVC 6
ASP.NET MVC 5
● Podporováno ve Visual Studio 2013
ASP.NET Core (MVC 6)
● Vyžaduje Visual Studio 2015
ASP.NET MVC 5 - Jak začít?
ASP.NET MVC 5 - Jak začít?
ASP.NET MVC 5 - Jak začít?
Výchozí “Hello World” aplikace je dobrý výchozím
bodem pro ASP.NET MVC apliaci.
ASP.NET MVC 5 - routování
Url adresy neobsahují adresu fyzického souboru, jako např.:
http://server/application/Products.aspx?id=4
Ale požívají “url patterns”:
Adresa: http://server/application/Products/show/beverages
odpovídá vzoru: server/application/{area}/{action}/{category}
>> čitelnější i pro lidi
>> router se pak stará o správný překlad url (podle šablony) na fyzický soubor
(controller) a příslušnou metodu a s příslušnými parametry
ASP.NET MVC 5 - routování - příklady
Definice routy Příklad odpovídající URL
{controller}/{action}/{id} /Products/show/beverages
{table}/Details.aspx /Products/Details.aspx
blog/{action}/{entry} /blog/show/123
{reporttype}/{year}/{month}/{day} /sales/2008/1/5
{locale}/{action} /US/show
{language}-{country}/{action} /en-US/show
ASP.NET MVC 5 - routování - typické URL vzory
Výchozí vzor adresy URL Příklady odpovídajících adres URL
{controller}/{action}/{id} http://server/application/Products/show/beverages
{resource}.axd/{*pathInfo} http://server/application/WebResource.axd?d=...
ASP.NET MVC 5 - routování - přidání nových cest
Pokud přijmete konvenci MVC pro implementaci popisovačů vytvořením tříd
dědících ze třídy ControllerBase a budete jim dávat názvy končící "Controller",
nemusíte pro aplikaci MVC přidávat žádné cesty ručně. Předem nastavené cesty
budou volat metody akcí, které implementujete ve třídách popisovače.
Pokud chcete přidat vlastní cesty do aplikace MVC, použijte metodu
MapRoute(RouteCollection, String, String) namísto metody
MapPageRoute(String, String, String).
Viz: https://goo.gl/kcWnwu
ASP.NET MVC 5 - routování
Nastavení výchozích hodnot parametrů adresy URL
Když definujete cestu, můžete parametru přiřadit výchozí hodnotu. Výchozí
hodnota je použita, pokud v adrese URL není hodnota daného parametru
specifikována. Výchozí hodnoty cesty nastavíte přiřazením objektu slovníku
vlastnosti Defaults třídy Route. Následující příklad ukazuje, jak přidat cestu, která
má výchozí hodnoty, pomocí metody MapPageRoute(String, String, String,
Boolean, RouteValueDictionary).
Viz: https://goo.gl/eEjs2K
ASP.NET MVC 5 - routování
Nastavení výchozích hodnot parametrů adresy URL
Když směrování technologie ASP.NET obslouží požadavek adresy URL, definice cesty ukázaná v příkladu (s
výchozími hodnotami food pro categoryName a show pro action) poskytne výsledky, které jsou uvedeny v
následující tabulce.
adresa URL Hodnoty parametru
/Category action = "show" (výchozí hodnota)
categoryName = "food" (výchozí hodnota)
/Category/add action = "add"
categoryName = "food" (výchozí hodnota)
/Category/add/beverages action = "add"
categoryName= "beverages"
ASP.NET MVC 5 - routování
Obsluha proměnného počtu segmentů ve vzoru adresy URL
Někdy musíte obsluhovat žádosti adresy URL, které obsahují proměnný počet segmentů adresy URL. Při
definici cesty specifikujete, že pokud má adresa URL více segmentů, než je uvedeno ve vzoru, mají se
segmenty navíc považovat za součást posledního segmentu. K obsluze dalších segmentů tímto způsobem
označte poslední parametr hvězdičkou (*). Jedná se o takzvaný parametr catch-all. Cesta, která obsahuje
parametr catch-all, bude souhlasit i s adresami URL, které pro poslední parametr neobsahují žádné
hodnoty. Následující příklad ukazuje vzor cesty, který odpovídá neznámému počtu segmentů.
query/{queryname}/{*queryvalues}
ASP.NET MVC 5 - routování
Obsluha proměnného počtu segmentů ve vzoru adresy URL
adresa URL Hodnoty parametru
/query/select/bikes/onsale queryname = "select"
queryvalues = "bikes/onsale"
/query/select/bikes queryname = "select"
queryvalues = "bikes"
/query/select queryname = "select"
queryvalues = prázdný řetězec
ASP.NET MVC 5 - routování
Přidání omezení směrování
Kromě porovnání žádosti adresy URL s definicí cesty podle počtu parametrů v adrese URL můžete
specifikovat, že hodnoty v parametrech mají splňovat určitá omezení.
Pokud adresa URL obsahuje hodnoty, které jsou mimo omezení pro cestu, pak není tato cesty použita k
obsluze požadavku.
Omezení slouží k zajištění, že parametry adresy URL budou obsahovat hodnoty, které budou ve vaší
aplikaci fungovat.
https://goo.gl/JAgFKZ
ASP.NET MVC 5 - routování
Přidání omezení směrování
Když směrování zpracuje žádost adresy URL, definice cesty z předchozího příkladu (https://goo.gl/JAgFKZ)
poskytne výsledky, které jsou uvedeny v následující tabulce.
adresa URL Výsledek
/US Žádná shoda. Parametry locale a year jsou povinné.
/US/08 Žádná shoda. Omezení na parametru year vyžaduje 4 číslice.
/US/2008 locale = "US"
year = "2008"
ASP.NET MVC 5 - routování
Scénáře, kdy se směrování nepoužívá
Je nalezen fyzický soubor, který se shoduje se vzorem adresy URL
Například žádost http://server/application/Products/Beverages/Coffee.aspx není směrováním
obsloužena, pokud v cestě Products/Beverages/Coffee.aspx existuje fyzický soubor. Směrování
nezpracuje požadavek, i když odpovídá definovanému vzoru, jako je například {controller}/{action}/{id}.
Směrování je pro vzor adresy URL explicitně vypnuto
Rovněž můžete nastavit, aby směrování neobsluhovalo určité žádosti adres URL. Směrování zabráníte ve
vyřízení určitých požadavků definováním cesty a určením, že k jejich vyřízení má být použita třída
StopRoutingHandler. Pokud je požadavek obsloužen objektem StopRoutingHandler, objekt
StopRoutingHandler zablokuje jakékoli další zpracování žádosti směrováním. Namísto toho je požadavek
zpracován jako stránka ASP.NET, webová služba nebo jiný koncový bod technologie ASP.NET.
ASP.NET MVC 5 - routování
Více viz dokumentace asp.net
ASP.NET MVC 5 - Razor templates
ASP.NET MVC 5 - Razor templates
Znak @
Začínají jím bloky kódu
<!-- Single statement blocks -->
@{ var total = 7; }
@{ var myMessage = "Hello World"; }
<!-- Inline expressions -->
<p>The value of your account is: @total </p>
<p>The value of myMessage is: @myMessage</p>
<!-- Multi-statement block -->
@{
var greeting = "Welcome to our site!";
var weekDay = DateTime.Now.DayOfWeek;
var greetingMessage = greeting + " Today is: " +
weekDay;
}
<p>The greeting is: @greetingMessage</p>
ASP.NET MVC 5 - Razor templates
Rozhodování
@{
var result = "";
if(IsPost)
{
result = "This page was posted using the Submit
button.";
}
else
{
result = "This was the first request for this
page.";
}
}
<form method="POST" action="" >
<input type="Submit" name="Submit" value="Submit"/>
<p>@result</p>
</form>
ASP.NET MVC 5 - další kapitoly
JavaScript and Client Frameworks
Mobile
Working with Data - Entity Framework PDF (Code First přístup vs. Model First přístup: https://goo.gl/Tr0uJw)
Testing and Debugging
Security, Authentication, and Authorization
Viz https://www.asp.net/mvc/overview/getting-started

More Related Content

Viewers also liked

INPTP přednáška 03 2016
INPTP přednáška 03 2016INPTP přednáška 03 2016
INPTP přednáška 03 2016Jan Hřídel
 
ASP .NET MVC
ASP .NET MVC ASP .NET MVC
ASP .NET MVC eldorina
 
ASP .NET MVC Introduction & Guidelines
ASP .NET MVC Introduction & Guidelines  ASP .NET MVC Introduction & Guidelines
ASP .NET MVC Introduction & Guidelines Dev Raj Gautam
 
.NET Framework Overview
.NET Framework Overview.NET Framework Overview
.NET Framework OverviewDoncho Minkov
 
Introduction to .net framework
Introduction to .net frameworkIntroduction to .net framework
Introduction to .net frameworkArun Prasad
 

Viewers also liked (7)

INPTP přednáška 03 2016
INPTP přednáška 03 2016INPTP přednáška 03 2016
INPTP přednáška 03 2016
 
ASP .NET MVC
ASP .NET MVC ASP .NET MVC
ASP .NET MVC
 
ASP .NET MVC Introduction & Guidelines
ASP .NET MVC Introduction & Guidelines  ASP .NET MVC Introduction & Guidelines
ASP .NET MVC Introduction & Guidelines
 
ASP .NET Core MVC
ASP .NET Core MVCASP .NET Core MVC
ASP .NET Core MVC
 
ASP .net MVC
ASP .net MVCASP .net MVC
ASP .net MVC
 
.NET Framework Overview
.NET Framework Overview.NET Framework Overview
.NET Framework Overview
 
Introduction to .net framework
Introduction to .net frameworkIntroduction to .net framework
Introduction to .net framework
 

Similar to ASP.NET MVC

ASP.NET - Make Web not War
ASP.NET - Make Web not WarASP.NET - Make Web not War
ASP.NET - Make Web not WarAleš Roubíček
 
Rozšiřitelnost ASP.NET MVC
Rozšiřitelnost ASP.NET MVCRozšiřitelnost ASP.NET MVC
Rozšiřitelnost ASP.NET MVCtopascz
 
Představení Ruby on Rails
Představení Ruby on RailsPředstavení Ruby on Rails
Představení Ruby on Railsigloonet
 
Jak zlepšit zabezpečení čtvrtiny celého webu
Jak zlepšit zabezpečení čtvrtiny celého webuJak zlepšit zabezpečení čtvrtiny celého webu
Jak zlepšit zabezpečení čtvrtiny celého webuMichal Špaček
 
MoroSystems na ostravském CZJUGu o Apache Wicket
MoroSystems na ostravském CZJUGu o Apache WicketMoroSystems na ostravském CZJUGu o Apache Wicket
MoroSystems na ostravském CZJUGu o Apache WicketTomáš Páral
 
Rozšiřitelnost ASP.NET MVC
Rozšiřitelnost ASP.NET MVCRozšiřitelnost ASP.NET MVC
Rozšiřitelnost ASP.NET MVCtopascz
 
Vytvořeno pro SEO (Designed for SEO)
Vytvořeno pro SEO (Designed for SEO)Vytvořeno pro SEO (Designed for SEO)
Vytvořeno pro SEO (Designed for SEO)Pavel Ungr
 
Pavel ungr designed_for_seo
Pavel ungr designed_for_seoPavel ungr designed_for_seo
Pavel ungr designed_for_seoH1.cz
 
ASP.NET MVC 3 and SQL Server interoperability overview [CZ]
ASP.NET MVC 3 and SQL Server interoperability overview [CZ]ASP.NET MVC 3 and SQL Server interoperability overview [CZ]
ASP.NET MVC 3 and SQL Server interoperability overview [CZ]Vítězslav Šimon
 

Similar to ASP.NET MVC (14)

ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
ASP.NET - Make Web not War
ASP.NET - Make Web not WarASP.NET - Make Web not War
ASP.NET - Make Web not War
 
Rozšiřitelnost ASP.NET MVC
Rozšiřitelnost ASP.NET MVCRozšiřitelnost ASP.NET MVC
Rozšiřitelnost ASP.NET MVC
 
TechEd 2014 - MVC5
TechEd 2014 - MVC5TechEd 2014 - MVC5
TechEd 2014 - MVC5
 
ASP.NET MVC a TDD
ASP.NET MVC a TDDASP.NET MVC a TDD
ASP.NET MVC a TDD
 
TNPW2-2011-06
TNPW2-2011-06TNPW2-2011-06
TNPW2-2011-06
 
Představení Ruby on Rails
Představení Ruby on RailsPředstavení Ruby on Rails
Představení Ruby on Rails
 
ASP.NET 3.5 / futures
ASP.NET 3.5 / futuresASP.NET 3.5 / futures
ASP.NET 3.5 / futures
 
Jak zlepšit zabezpečení čtvrtiny celého webu
Jak zlepšit zabezpečení čtvrtiny celého webuJak zlepšit zabezpečení čtvrtiny celého webu
Jak zlepšit zabezpečení čtvrtiny celého webu
 
MoroSystems na ostravském CZJUGu o Apache Wicket
MoroSystems na ostravském CZJUGu o Apache WicketMoroSystems na ostravském CZJUGu o Apache Wicket
MoroSystems na ostravském CZJUGu o Apache Wicket
 
Rozšiřitelnost ASP.NET MVC
Rozšiřitelnost ASP.NET MVCRozšiřitelnost ASP.NET MVC
Rozšiřitelnost ASP.NET MVC
 
Vytvořeno pro SEO (Designed for SEO)
Vytvořeno pro SEO (Designed for SEO)Vytvořeno pro SEO (Designed for SEO)
Vytvořeno pro SEO (Designed for SEO)
 
Pavel ungr designed_for_seo
Pavel ungr designed_for_seoPavel ungr designed_for_seo
Pavel ungr designed_for_seo
 
ASP.NET MVC 3 and SQL Server interoperability overview [CZ]
ASP.NET MVC 3 and SQL Server interoperability overview [CZ]ASP.NET MVC 3 and SQL Server interoperability overview [CZ]
ASP.NET MVC 3 and SQL Server interoperability overview [CZ]
 

More from Jan Hřídel

INPTP přednáška 01a 2016
INPTP přednáška 01a 2016INPTP přednáška 01a 2016
INPTP přednáška 01a 2016Jan Hřídel
 
KST/ICSHP - 5. a 6. přednáška
KST/ICSHP - 5. a 6. přednáškaKST/ICSHP - 5. a 6. přednáška
KST/ICSHP - 5. a 6. přednáškaJan Hřídel
 
KST/ICSHP - 3. a 4. přednáška
KST/ICSHP - 3. a 4. přednáškaKST/ICSHP - 3. a 4. přednáška
KST/ICSHP - 3. a 4. přednáškaJan Hřídel
 
KST/ICSHP - 2. přednáška
KST/ICSHP - 2. přednáškaKST/ICSHP - 2. přednáška
KST/ICSHP - 2. přednáškaJan Hřídel
 
KST/ICSHP - 1. přednáška
KST/ICSHP - 1. přednáškaKST/ICSHP - 1. přednáška
KST/ICSHP - 1. přednáškaJan Hřídel
 
Startup investor pitch
Startup investor pitchStartup investor pitch
Startup investor pitchJan Hřídel
 
Pokročilé techniky programování .NET a C#
Pokročilé techniky programování .NET a C#Pokročilé techniky programování .NET a C#
Pokročilé techniky programování .NET a C#Jan Hřídel
 

More from Jan Hřídel (10)

INPTP wpf
INPTP   wpfINPTP   wpf
INPTP wpf
 
INPTP přednáška 01a 2016
INPTP přednáška 01a 2016INPTP přednáška 01a 2016
INPTP přednáška 01a 2016
 
KST/ICSHP - 5. a 6. přednáška
KST/ICSHP - 5. a 6. přednáškaKST/ICSHP - 5. a 6. přednáška
KST/ICSHP - 5. a 6. přednáška
 
KST/ICSHP - 3. a 4. přednáška
KST/ICSHP - 3. a 4. přednáškaKST/ICSHP - 3. a 4. přednáška
KST/ICSHP - 3. a 4. přednáška
 
KST/ICSHP - 2. přednáška
KST/ICSHP - 2. přednáškaKST/ICSHP - 2. přednáška
KST/ICSHP - 2. přednáška
 
KST/ICSHP - 1. přednáška
KST/ICSHP - 1. přednáškaKST/ICSHP - 1. přednáška
KST/ICSHP - 1. přednáška
 
Startup investor pitch
Startup investor pitchStartup investor pitch
Startup investor pitch
 
Nástěnka 01
Nástěnka 01Nástěnka 01
Nástěnka 01
 
Nástěnka 02
Nástěnka 02Nástěnka 02
Nástěnka 02
 
Pokročilé techniky programování .NET a C#
Pokročilé techniky programování .NET a C#Pokročilé techniky programování .NET a C#
Pokročilé techniky programování .NET a C#
 

ASP.NET MVC

  • 1. ASP.NET MVC Úvod do technologie
  • 2. Co to je ASP.NET MVC? Technologie pro tvorbu sofistikovaných webových aplikací. ● Založeno na návrhovém vzoru Model-View-Controller ● Umožňuje rychlý agilní vývoj ● Využití nejnovějších webových standardů
  • 3. ASP.NET MVC 5 vs. ASP.NET Core MVC 6 ASP.NET MVC 5 ● Podporováno ve Visual Studio 2013 ASP.NET Core (MVC 6) ● Vyžaduje Visual Studio 2015
  • 4. ASP.NET MVC 5 - Jak začít?
  • 5. ASP.NET MVC 5 - Jak začít?
  • 6. ASP.NET MVC 5 - Jak začít? Výchozí “Hello World” aplikace je dobrý výchozím bodem pro ASP.NET MVC apliaci.
  • 7. ASP.NET MVC 5 - routování Url adresy neobsahují adresu fyzického souboru, jako např.: http://server/application/Products.aspx?id=4 Ale požívají “url patterns”: Adresa: http://server/application/Products/show/beverages odpovídá vzoru: server/application/{area}/{action}/{category} >> čitelnější i pro lidi >> router se pak stará o správný překlad url (podle šablony) na fyzický soubor (controller) a příslušnou metodu a s příslušnými parametry
  • 8. ASP.NET MVC 5 - routování - příklady Definice routy Příklad odpovídající URL {controller}/{action}/{id} /Products/show/beverages {table}/Details.aspx /Products/Details.aspx blog/{action}/{entry} /blog/show/123 {reporttype}/{year}/{month}/{day} /sales/2008/1/5 {locale}/{action} /US/show {language}-{country}/{action} /en-US/show
  • 9. ASP.NET MVC 5 - routování - typické URL vzory Výchozí vzor adresy URL Příklady odpovídajících adres URL {controller}/{action}/{id} http://server/application/Products/show/beverages {resource}.axd/{*pathInfo} http://server/application/WebResource.axd?d=...
  • 10. ASP.NET MVC 5 - routování - přidání nových cest Pokud přijmete konvenci MVC pro implementaci popisovačů vytvořením tříd dědících ze třídy ControllerBase a budete jim dávat názvy končící "Controller", nemusíte pro aplikaci MVC přidávat žádné cesty ručně. Předem nastavené cesty budou volat metody akcí, které implementujete ve třídách popisovače. Pokud chcete přidat vlastní cesty do aplikace MVC, použijte metodu MapRoute(RouteCollection, String, String) namísto metody MapPageRoute(String, String, String). Viz: https://goo.gl/kcWnwu
  • 11. ASP.NET MVC 5 - routování Nastavení výchozích hodnot parametrů adresy URL Když definujete cestu, můžete parametru přiřadit výchozí hodnotu. Výchozí hodnota je použita, pokud v adrese URL není hodnota daného parametru specifikována. Výchozí hodnoty cesty nastavíte přiřazením objektu slovníku vlastnosti Defaults třídy Route. Následující příklad ukazuje, jak přidat cestu, která má výchozí hodnoty, pomocí metody MapPageRoute(String, String, String, Boolean, RouteValueDictionary). Viz: https://goo.gl/eEjs2K
  • 12. ASP.NET MVC 5 - routování Nastavení výchozích hodnot parametrů adresy URL Když směrování technologie ASP.NET obslouží požadavek adresy URL, definice cesty ukázaná v příkladu (s výchozími hodnotami food pro categoryName a show pro action) poskytne výsledky, které jsou uvedeny v následující tabulce. adresa URL Hodnoty parametru /Category action = "show" (výchozí hodnota) categoryName = "food" (výchozí hodnota) /Category/add action = "add" categoryName = "food" (výchozí hodnota) /Category/add/beverages action = "add" categoryName= "beverages"
  • 13. ASP.NET MVC 5 - routování Obsluha proměnného počtu segmentů ve vzoru adresy URL Někdy musíte obsluhovat žádosti adresy URL, které obsahují proměnný počet segmentů adresy URL. Při definici cesty specifikujete, že pokud má adresa URL více segmentů, než je uvedeno ve vzoru, mají se segmenty navíc považovat za součást posledního segmentu. K obsluze dalších segmentů tímto způsobem označte poslední parametr hvězdičkou (*). Jedná se o takzvaný parametr catch-all. Cesta, která obsahuje parametr catch-all, bude souhlasit i s adresami URL, které pro poslední parametr neobsahují žádné hodnoty. Následující příklad ukazuje vzor cesty, který odpovídá neznámému počtu segmentů. query/{queryname}/{*queryvalues}
  • 14. ASP.NET MVC 5 - routování Obsluha proměnného počtu segmentů ve vzoru adresy URL adresa URL Hodnoty parametru /query/select/bikes/onsale queryname = "select" queryvalues = "bikes/onsale" /query/select/bikes queryname = "select" queryvalues = "bikes" /query/select queryname = "select" queryvalues = prázdný řetězec
  • 15. ASP.NET MVC 5 - routování Přidání omezení směrování Kromě porovnání žádosti adresy URL s definicí cesty podle počtu parametrů v adrese URL můžete specifikovat, že hodnoty v parametrech mají splňovat určitá omezení. Pokud adresa URL obsahuje hodnoty, které jsou mimo omezení pro cestu, pak není tato cesty použita k obsluze požadavku. Omezení slouží k zajištění, že parametry adresy URL budou obsahovat hodnoty, které budou ve vaší aplikaci fungovat. https://goo.gl/JAgFKZ
  • 16. ASP.NET MVC 5 - routování Přidání omezení směrování Když směrování zpracuje žádost adresy URL, definice cesty z předchozího příkladu (https://goo.gl/JAgFKZ) poskytne výsledky, které jsou uvedeny v následující tabulce. adresa URL Výsledek /US Žádná shoda. Parametry locale a year jsou povinné. /US/08 Žádná shoda. Omezení na parametru year vyžaduje 4 číslice. /US/2008 locale = "US" year = "2008"
  • 17. ASP.NET MVC 5 - routování Scénáře, kdy se směrování nepoužívá Je nalezen fyzický soubor, který se shoduje se vzorem adresy URL Například žádost http://server/application/Products/Beverages/Coffee.aspx není směrováním obsloužena, pokud v cestě Products/Beverages/Coffee.aspx existuje fyzický soubor. Směrování nezpracuje požadavek, i když odpovídá definovanému vzoru, jako je například {controller}/{action}/{id}. Směrování je pro vzor adresy URL explicitně vypnuto Rovněž můžete nastavit, aby směrování neobsluhovalo určité žádosti adres URL. Směrování zabráníte ve vyřízení určitých požadavků definováním cesty a určením, že k jejich vyřízení má být použita třída StopRoutingHandler. Pokud je požadavek obsloužen objektem StopRoutingHandler, objekt StopRoutingHandler zablokuje jakékoli další zpracování žádosti směrováním. Namísto toho je požadavek zpracován jako stránka ASP.NET, webová služba nebo jiný koncový bod technologie ASP.NET.
  • 18. ASP.NET MVC 5 - routování Více viz dokumentace asp.net
  • 19. ASP.NET MVC 5 - Razor templates
  • 20. ASP.NET MVC 5 - Razor templates Znak @ Začínají jím bloky kódu <!-- Single statement blocks --> @{ var total = 7; } @{ var myMessage = "Hello World"; } <!-- Inline expressions --> <p>The value of your account is: @total </p> <p>The value of myMessage is: @myMessage</p> <!-- Multi-statement block --> @{ var greeting = "Welcome to our site!"; var weekDay = DateTime.Now.DayOfWeek; var greetingMessage = greeting + " Today is: " + weekDay; } <p>The greeting is: @greetingMessage</p>
  • 21. ASP.NET MVC 5 - Razor templates Rozhodování @{ var result = ""; if(IsPost) { result = "This page was posted using the Submit button."; } else { result = "This was the first request for this page."; } } <form method="POST" action="" > <input type="Submit" name="Submit" value="Submit"/> <p>@result</p> </form>
  • 22. ASP.NET MVC 5 - další kapitoly JavaScript and Client Frameworks Mobile Working with Data - Entity Framework PDF (Code First přístup vs. Model First přístup: https://goo.gl/Tr0uJw) Testing and Debugging Security, Authentication, and Authorization Viz https://www.asp.net/mvc/overview/getting-started