Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

ASP.NET MVC 5 Grundkurs

Einen Datensatz ausgeben

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Auch die Detailansicht eines einzelnen Datenbankeintrags ist schnell implementiert. Noch dazu bietet Visual Studio eine vorgefertigte Vorlage an, die das HTML-Markup bereits vorbereitet, so dass Sie es bei Bedarf nur noch anpassen müssen.
08:14

Transkript

Wir würden jetzt gerne die Personen nicht mehr ausgeben, sondern auch eine Detailansicht haben, also zu einer Person die Informationen auf einer Seite sozusagen gesammelt sehen. Also erstellen wir dazu einfach eine neue Action Methode und ich halte mich an die Konvention der Vorlage und gebe dazu entsprechend auch die URL an, die aufgerufen wird, wenn diese Aktion Methode zum Einsatz kommen sollen, also in dem Fall "/Personen/Details". In dieser Action Methode, die dann "public: ActionResult Details()" heißt, muss ja irgendwie der Schlüssel übergeben werden, über den wir an die Person rankommen und wir haben da ja die ID, das heißt, wir haben einen Parameter-"ID" als Integer und der eben übergeben wird dann über die URL, na ja und vielleicht sollten wir damit rechnen, dass der nicht übergeben wird, das fangen wir am besten ab und dann könnten wir noch irgendwo eine Überprüfung machen, die eben ermittelt wird, eine ID übergeben, ja oder nein. Wenn keine ID übergeben wird, also wenn ID den Wert null hat, dann müssen wir eine Fehlermeldung zum Beispiel ausgeben oder könnten eine Redirect machen, zum Beispiel zu einer Fehlerseite oder auch zur Startseite. ich mache es mir jetzt relativ einfach. Ich leite zur Startseite weiter, ich muss ja etwas vom Typ ActionResult zurückgeben und wir haben ja schon gesehen, es gibt da View als Hilfsmethode, es gibt Kontent als Hilfsmethode und es gibt auch RedirectToAction, das heißt, es wird eine Weiterleitung zu einer Aktion durchgeführt und ich leite einfach auf die Index-Aktion weiter, Das heißt also, ich gebe jetzt hier etwas von Typ ActionResult zurück, ja die Rückgabe ist eben hier ein RedirectToRoutResult, aber im Wesentlichen ist das auch ein ActionResult und dann wird eben bei so einer ungültigen URL einfach auf die Startseite weitergeleitet. Ich könnte wie, wie gesagt, auch noch eine HTTP-Fehlermeldung ausgeben oder Fehlermeldung et cetera, et cetera, aber ich denke für unsere Zwecke passt das. Ansonsten habe ich eine ID und dann begebe ich mich mal auf die Suche nach der Person, also "var person" oder Person, "=db.People" und dann bieten wir die Klasse unter anderem "find" an und ich suche dann entsprechend nach einer Person und übergeben einfach die ID. Na ja und dann finde ich etwas oder ich finde nicht. Auch hier wieder, wenn die Person den Wert null hat, also wenn nichts gefunden wurde, dann mache ich wieder RedirectToActionIndex. Jetzt diesmal ohne Fehlermeldung, ansonsten habe ich eine Person. Was mache ich mit der Person? Ja, das ist, denke ich mittlerweile klar. Ich gehe zur View und übergebe diese "person" an die View. So einfach ist das. Also, dann die View übergeben, brauche ich noch die View. Ansicht hinzufügen und Sie sehen, ist immer dasselbe. Wenn man sich einmal dran gewöhnt, passt das wunderbar und ich sage einfach Ansichtsname ist "Details", Vorlage könnte ich wieder "Empty" nehmen mit Modell, aber diesmal nehme ich direkt die Detailansicht und schaue was mir generiert wird. Modell ist klar, das ist die Person, Datenbank oder Datenkontextklasse ist PersonenDatenbankEntities, "Hinzufügen" dann wird wieder diese View-Datei erstellt. Und auch hier sehen Sie wieder, wird gesagt, das Modell hat einen bestimmten Typ, ist als eine typisierte View, der Typ ist Personen und Visual Studio hat jetzt auch direkt geschaut, ja was hat denn die Person alles für entsprechender Eigenschaften und hat dann hier dazu den Code hingeschrieben. Die Idee ist einfach hier, dass die Vorlage automatisch solche eingebauten statischen Hilfsmethoden verwendet, die dann unter anderem die Beschriftung für das jeweilige Datenbankfeld ausgeben und den zugehörigen Wert. Wir gehen jetzt an der Stelle nicht auf diese Hilfsmethoden ein, wir vereinfachen das ein bisschen und geben die Texte selber an, also wir geben hier den Vornamen aus und der Vorname steckt natürlich in @Model.Vorname und der Nachname steckt im Feld @Model.Nachname und abschließend haben wir natürlich noch das Geburtsdatum und das Geburtsdatum steckt in einem Feld Namens @Model.Geburtsdatum. Ich darf nur nicht die Klammeraffen vergessen, dann wird das auch korrekt ausgegeben. So, wunderbar, das sieht doch schon relativ gut aus. Jetzt müssen wir also irgendwie noch ein Problemchen lösen, und zwar wir bekommen ja so eine ID übergeben. Wie bekommen wir die id übergeben? Vielleicht erinnern Sie sich an die Routenkonfiguration. In der Routenkonfiguration hieß es ja, die URL schaut wie folgt aus: Erst der Controller, also zum Beispiel Personen, dann die Action, also zum Beispiel Details und dann die ID. Dass heißt ich muss einfach die URL: Personen/Details/1/2/5 aufrufen. Ja, das ist ja relativ praktisch. Das heißt, ich baue mir jetzt von Hand den Link, na das kann es auch nicht sein. Für das Erzeugen eines Links, gibt es auch eingebaute Hilfsmethoden und in der vorgefertigten Ansicht, und deswegen haben wir die genommen, ist so was bereits zu sehen. Hier wird nämlich folgendes angeboten: @Html.ActionLink, statische Methode, die eben en Link erzeugt mit einer Beschriftung "Back to List" oder wir könnten zum Beispiel sagen "Zurück zur Übersicht" und dann den Namen der Action Methode, also in dem Fall "Index", das heißt, das würde einfach auf /Personen/Index verlinken und mit Hilfe dieser Methode sind Sie dann auch wenn sich etwas mal verschiebt in der Regel auf der sicheren Seite, deswegen ist das besser als von Hand die URL zusammenzubasteln. und dann haben wir hier oben noch ein ActionLink auf das Bearbeiten, darum kümmern wir uns etwas später, das ist also die Beschriftung, das ist der Name der ActionMethode wird dann addet sein, gut halten wir uns dran und dann wird noch ein Wert übergeben, und zwar es wird übergeben hier ein anonymer Typ, Eigenschaft ID, der Wert ist die ID des Modells, das heißt wenn das jetzt gerade die Detailansicht für die Person mit der ID 5 ist, dann würde ID gleich 5 hinten an die URL angehängt und genau das ist es was wir eigentlich auch brauchen, um auf die Detailansicht zu verlinken, das heißt, ich kopiere das jetzt mal in die Zwischenablage und gehe in die View, in der wir die Übersicht haben, also in die Index CSHTML dort geben wir ja für jede Person einen entsprechenden Eintrag aus mit Vorname, Nachname, Geburtsdatum und jetzt gebe ich hier einfach den Link an und ich nenne es nicht "Arbeiten", sondern ich nenne den jetzt "Details", gehe auf die Action Methode Details und übergebe als ID die ID, in dem Fall der Person, weil wir haben ja hier jetzt Personen auf Basis der Foreach-Schleife. Das heißt, jetzt ist hier ein Link angefügt worden, der dieses ID-Feld und den zugehörigen Wert anhängt. Das wird dann übergeben, sodass auch diese Details-View dann die korrekte Person erhält. Klingt spannend, involviert natürlich auch einige Bausteine, einige Bestandteile, die alle nahtlos ineinander passen müssen, aber wenn wir den Browser starten, werden wir sehen, dass es das auch tatsächlich tut, wir gehen wieder auf unsere Personenübersicht, wo wir unsere Aufzählungsliste haben und diese Aufzählungsliste ist jetzt entsprechend erweitert worden durch den Link, sehen wir hier, hier steht also Details und Sie sehen links unten immer die URL. Der erste Link geht auf /Details/1, der geht auf /Details/2. Klicken wir mal den zweiten Wert an, Martina Musterfrau und dann wird /Personen/Details/2 geladen und tatsächlich wir sehen hier alle Werte. Wir hätten hier ein Bearbeiten-Link und wir könnten auch wieder zurückgehen zu Übersicht, Links sind alle korrekt angepasst, funktioniert also sehr sehr vieles out of the box und wir können uns wirklich darauf fokussieren zum einen die Daten zu holen und zum anderen die Daten auch irgendwie schon anzuzeigen, aber dieses verbinden miteinander, das geht sehr sehr einfach von der Hand. Da unterstützt uns das Framework auch auf sehr sehr simple und auch sehr sehr bequeme Art und Weise

ASP.NET MVC 5 Grundkurs

Machen Sie sich mit den Grundlagen von ASP.NET MVC 5 vertraut und lassen Sie sich in dieser anspruchsvollen Einführung diesen Architekturansatz von Microsoft erläutern.

2 Std. 30 min (20 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!