TOC

This article has been localized into German by the community.

Controller:

Einführung

Am Anfang dieses Tutorials haben wir kurz über Controller im MVC-Muster gesprochen und sogar einen zu unserem Projekt hinzugefügt, um zu sehen, wie so etwas aussieht, und um Sie schnell auf Tempo zu bringen. In diesem Kapitel gehen wir tiefer auf das Thema Controller ein, beginnend in diesem Artikel, wo wir die Kernkonzepte eines Controllers besprechen.

Was ist ein Controller?

Wie zu Beginn dieses Lernprogramms erwähnt, fungiert der Controller als Vermittler. Er kombiniert Ihr Modell mit einer Ansicht und liefert das Ergebnis an den Endbenutzer. Es ist jedoch weder ein Modell noch eine Ansicht erforderlich - der Controller kann für die grundlegendsten Vorgänge, z.B.: Übermitteln einer einfachen Textnachricht oder Weiterleiten des Benutzers an einen anderen Ort. Wir werden dies in dem späteren Artikel über Aktionsergebnisse diskutieren.

In ASP.NET MVC ist ein Controller wie jede andere Klasse, hat also die Dateierweiterung .cs (oder .vb, wenn Sie Visual Basic verwenden) und sieht aus wie jede andere .NET-Klasse. Es gibt jedoch einige Dinge, die es Ihnen (und dem .NET-Framework) ermöglichen, es als MVC-Controller zu erkennen:

  • Es befindet sich normalerweise in einem Ordner namens "Controller" im Stammverzeichnis Ihres Projekts
  • Es erbt von Microsoft.AspNetCore.Mvc.Controller (oder von einer Ihrer eigenen Klassen, die dann die Microsoft.AspNetCore.Mvc.Controller -Klasse erbt)
  • Der Name der Klasse endet normalerweise mit dem Wort Controller, z.B.: "HomeController" oder "ProductsController"

Wenn Sie diese Konventionen nicht befolgen, kann das .NET Framework Ihre Klasse nicht als Controller erkennen. Daher ist es sinnvoll, sie zu befolgen. Wenn Sie jedoch darauf bestehen, z.B.: Wenn Sie Ihre Controller-Klassen unterschiedlich benennen, können Sie sie mit dem Attribut [Controller] versehen, das direkt vor der Klassendeklaration steht.

Durch das Erben der Microsoft.AspNetCore.Mvc.Controller -Klasse erhalten Sie einige zusätzliche Funktionen, die Sie für MVC-Zwecke verwenden können, z.B.: die Möglichkeit, Views / Partial Views zurückzugeben. Dank der HttpContext -Eigenschaft in der Controller Klasse kann Ihre Controller-Klasse auch auf HTTP-bezogene Informationen wie den Querystring zugreifen. Mit anderen Worten, es verwandelt eine reguläre .NET-Klasse in eine webfähige Klasse, die es Ihnen ermöglicht, Dinge zu tun, die Sie normalerweise in Ihrer PHP- oder ASP Classic-Datei oder in einer der vielen anderen Webtechnologien tun können.

Wo sind die Controller platziert?

Wie bereits erwähnt, werden Controller normalerweise in einem Ordner namens "Controller" direkt im Stammverzeichnis Ihres MVC-Projekts abgelegt. Sie werden normalerweise nach ihrem Verwendungszweck benannt, wobei das Wort "Controller" als Suffix verwendet wird. Im Projektmappen-Explorer könnte die Ordnerstruktur etwa so aussehen:

Zusammenfassung

Hoffentlich haben Sie jetzt ein besseres Verständnis dafür, was ein Controller ist und wie sie definiert sind. In den kommenden Artikeln dieses Kapitels werden wir uns eingehender mit den verschiedenen Controller-Themen befassen, sodass Sie hoffentlich einen umfassenden Überblick über alle Funktionen eines Controllers in ASP.NET MVC erhalten.


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!