ASP.NET Core MVC Flashcards
leer de gebruiken van C#
Waar staat MVC voor
Model View Controller
Waarvoor dient een MVC applicatie?
Om een webapp te maken volgens de Model view controller methodologie.
Wat is de controller?
De controller is het brein van de app. Deze verwerkt alle requests, input etc en geeft de output dan weer via de view.
Hoe benoem je een controller?
NaamController. Gebruik een duidelijke benaming.
Wat is een Action?
Een functie binnen een Controller.
Welke interface geeft de Action terug waarin een object moet geimplementeerd worden.
IActionResult
benoem de delen:
HTTPS://Localhost:8000/Home/View
adres, controller, action
Welk is de default action die de browser gaat selecteren.
Index
Waar staat de default rouring?
program.cs - app.MapControllerRoute
Waarvoor staat het vraagteken in onderstaande code:
{id?}
Geeft aan dat de id optioneel is.
Wat is routing?
Het doorverwijzen via het adres naar de correcte view
Wat is een nullable parameter?
Een parameter waar na het type een vraagteken is gezet. Deze moet niet meegegeven worden. Je kan deze wel best via een if not null functie van waarden voorzien voor als null of als niet null
Verklaar Multiple routes
Je kan in de app.MapControllerRoute action verschillende routes doorgeven.
Wat zijn de 3 elementen die je in een alternatieve route moet zetten en verklaar?
Name: De naam van de route vb “sayhello”
pattern: patroon van het adres: Sayhello / {Name} / {lastName?}
defaults: Wat hij moet geven in geval van defoult waarde: new {controller= “Test”, action = “Hello3”};
Wat is een Query string?
Een Querystring is een adres waar je achteraan een action oproept met een vraagteken achter met hierachter de value pairs die de parameter weergeven, gescheiden door een ampersant.
Kan je Query strings en routing mixen?
Ja dat kan je.
Wat is de view
De view is hetgeen de geactiveerd wordt en wordt getoond als je de controller aanroept.
Verklaar hoe de mappen van de Views en controller tot elkaar verhouden
Per controller map is er een view map en per action is er een view file
Hoe voeg je een view toe
door op de action rechtermuis te klikken en add te kiezen. Kies dan voor razor view
Wat is razorcode
Razorcode is scheiding tussen serverside en clientside code.
Wat is serverside code
Dit zijn de acties die achterliggend uitgevoerd worden.
Wat is clientside code
Dit is de HTML code die gedisplayed wordt in de browser.
Waar vind je de Layout file
in de shared folder van je project.
Wat is het keyword voor de layout die default de hele pagina beslaat
@RenderBody()
Hoe kan je een bepaalde sectie aanspreken om een andere layout te gebruiken
@RenderSection(“Naam”, requiered: True/False)
Als je een RenderSection uitvoert wat is dan het verschil tussen een requiered: true of een false?
True wil zeggen dat je telkens deze sectie moet hebben in alle views die deze layout gebruiken. False maakt het toevoegen van deze sectie optioneel.
Hoe roep je in de view een sectie die je hebt bepaalt via @RenderSection(“Naam, requiered: False)
@section Naam
{
<p>Dit is die sectie.</p>
}
Als je de basis layout aanpast tot waar reikt de aanpassing dan?
Alle views die de default layout gebruiken.
In welke file vind je de aanwijzing van de basis layout?
Views/_Viewstart.cshtml
Hoe kan je de basis layout aanpassen?
Je kopieert de _Viewstart file naar het mapje van de View. Dan maak je een aangepaste layout in de Views/shared folder en roept deze aan in de kopie van de _ViewStart file
Hoe kan je de Layout aanpassen in de action?
return View(“NaamNieuweLayout”);
Hoe zet je commentaar in je view?
@Commentaar1
commentaar2
commentaar3@
Wat is een multiline block
Het block waar je de CS code in gaat schrijven
@{
CS code;
}
Hoe schrijf je HTML binnen een C# stukje? 2 methoden
via de <text> prefix
via de @: code</text>
Geef de 3 methoden om buiten het model data uit te wisselen tss de view en de controller?
ViewData[“Data”]
ViewBag.object
TempData[“Data”]
Wat is de ViewData?
Is een woordenlijst bestaande uit een key en een value die beschikbaar is in de view
Waar worden de Key value paren van een ViewData lijst gedefinieerd?
In de Controller binnen de action.
Hoe roep je de Viewdata data value op?
@ViewData[“KeyName”]
binnen HTML tags
hoe maak je een Viewdata dat verwijst naar een object?
ViewData[“Name”] = new Person()
Hoe voeg je de klasse toe aan de using sectie van je View
Je geeft het object in je code in en dan kan je links in de marge de klasse toevoegen.
Verklaar hoe je casting kunt gebruiken bij ViewData
Je kan een variabele aanmaken van een object type en dan de oproep van de Value casten naar dat datatype.
Person person = (Person)ViewData[“Name”];
Je kan de variabele dan gebruiken en zijn props aanroepen.
Wat is een ViewBag?
Een ViewBag is een objectWrapper rond ViewData die dynamische props toelaat.
ViewBag.Name = new Person{prop1, prop2,…}
Person person = (person)ViewBag.Name
Wat doen VeiwBag en ViewData?
Data uitwisselen tss Controller en View
Wat is TempData?
Tijdelijke collectie data die een redirect overleeft.
Wat is de syntax van TempData?
CONT:
TempData[“Person”] = new Person {prop1, prop2,…}
VIEW:
@{
Person person = (Person)TempData[“Person”]