<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://mediawiki.wissen-ahrensburg.de/index.php?action=history&amp;feed=atom&amp;title=Webframeworkk%2FASP.NET_Core%2FCrud_Opertations</id>
	<title>Webframeworkk/ASP.NET Core/Crud Opertations - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.wissen-ahrensburg.de/index.php?action=history&amp;feed=atom&amp;title=Webframeworkk%2FASP.NET_Core%2FCrud_Opertations"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Crud_Opertations&amp;action=history"/>
	<updated>2026-08-19T17:35:08Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Dokument</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Crud_Opertations&amp;diff=273&amp;oldid=prev</id>
		<title>imported&gt;Import: Version 198</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Crud_Opertations&amp;diff=273&amp;oldid=prev"/>
		<updated>2026-02-24T22:22:00Z</updated>

		<summary type="html">&lt;p&gt;Version 198&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).&amp;#039;&amp;#039;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Willkommen zu diesem umfassenden Tutorial zur Implementierung von &amp;#039;&amp;#039;&amp;#039;CRUD-Operationen (Create, Read, Update, Delete)&amp;#039;&amp;#039;&amp;#039; in ASP.NET Core MVC. Dieser Leitfaden konzentriert sich auf den Aufbau robuster, wartbarer und effizienter Webanwendungen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
== 🏗️ 1. Controller: Das Herzstück der Anwendung ==&lt;br /&gt;
&lt;br /&gt;
Controller verwalten eingehende HTTP-Anfragen, interagieren mit Services und geben die entsprechenden Views zurück.&lt;br /&gt;
&lt;br /&gt;
=== 🔍 Read (Die Index-Aktion) ===&lt;br /&gt;
&lt;br /&gt;
Die &amp;lt;code&amp;gt;Index&amp;lt;/code&amp;gt;-Aktion ist für das Abrufen und Anzeigen von Daten verantwortlich.&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Aufgaben:&amp;#039;&amp;#039;&amp;#039; Daten von der Service-Ebene abrufen, Sortierung/Filterung anwenden und die Daten in ein View-Modell verpacken.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Rückgabetyp:&amp;#039;&amp;#039;&amp;#039; &amp;lt;code&amp;gt;IActionResult&amp;lt;/code&amp;gt; (normalerweise ein &amp;lt;code&amp;gt;ViewResult&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
=== ➕ Create (Die Create-Aktionen) ===&lt;br /&gt;
&lt;br /&gt;
Die Create-Operation erfordert in der Regel zwei Aktionsmethoden:&lt;br /&gt;
&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;HttpGet &amp;lt;code&amp;gt;Create()&amp;lt;/code&amp;gt;:&amp;#039;&amp;#039;&amp;#039; Gibt die “Create”-View zurück, die das leere Formular enthält.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;HttpPost &amp;lt;code&amp;gt;Create(Model model)&amp;lt;/code&amp;gt;:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* ** Empfängt Formulardaten über das &amp;#039;&amp;#039;&amp;#039;Model Binding&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
** Validiert die Eingabe mit &amp;lt;code&amp;gt;ModelState.IsValid&amp;lt;/code&amp;gt;.&lt;br /&gt;
** Speichert die Entität über die Service-Ebene.&lt;br /&gt;
** Leitet nach Erfolg zur &amp;lt;code&amp;gt;Index&amp;lt;/code&amp;gt;-Aktion weiter (um doppelte Formularübermittlungen zu vermeiden).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
== 🖼️ 2. Views: Gestaltung der Benutzeroberfläche ==&lt;br /&gt;
&lt;br /&gt;
Views sind für die Präsentationslogik verantwortlich. Verwenden Sie &amp;#039;&amp;#039;&amp;#039;stark typisierte Views (Strongly Typed Views)&amp;#039;&amp;#039;&amp;#039; für eine bessere Wartbarkeit und IntelliSense-Unterstützung.&lt;br /&gt;
&lt;br /&gt;
=== 📋 Index-View (Read) ===&lt;br /&gt;
&lt;br /&gt;
* Zeigt eine Liste oder Tabelle von Elementen an.&lt;br /&gt;
* Enthält oft Benutzeroberflächen für &amp;#039;&amp;#039;&amp;#039;Sortierung&amp;#039;&amp;#039;&amp;#039; und &amp;#039;&amp;#039;&amp;#039;Suche&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* Kann &amp;#039;&amp;#039;&amp;#039;Partial Views&amp;#039;&amp;#039;&amp;#039; nutzen, um den Code sauber zu halten (z. B. eine Vorlage für jede Zeile).&lt;br /&gt;
&lt;br /&gt;
=== 📝 Create-View (Create) ===&lt;br /&gt;
&lt;br /&gt;
* Erstellt ein Formular mithilfe von &amp;#039;&amp;#039;&amp;#039;Tag Helpern&amp;#039;&amp;#039;&amp;#039; (&amp;lt;code&amp;gt;&amp;amp;lt;form&amp;amp;gt;&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;&amp;amp;lt;input&amp;amp;gt;&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;&amp;amp;lt;span asp-validation-for=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;lt;/code&amp;gt;).&lt;br /&gt;
* Bietet sofortiges Feedback durch Validierungsattribute.&lt;br /&gt;
* Bindet an ein spezifisches Request-Modell (z. B. &amp;lt;code&amp;gt;PersonAddRequest&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
== 🔄 3. Fortgeschrittene Funktionen: Sortieren &amp;amp;amp; Suchen ==&lt;br /&gt;
&lt;br /&gt;
Verbessern Sie die Benutzererfahrung, indem Sie das Finden und Organisieren von Daten erleichtern.&lt;br /&gt;
&lt;br /&gt;
=== 📊 Sortierung ===&lt;br /&gt;
&lt;br /&gt;
* Verwenden Sie &amp;#039;&amp;#039;&amp;#039;Query-String-Parameter&amp;#039;&amp;#039;&amp;#039; (z. B. &amp;lt;code&amp;gt;?sortBy=Name&amp;amp;amp;sortOrder=DESC&amp;lt;/code&amp;gt;), um die Logik auf dem Server zu steuern.&lt;br /&gt;
* Übergeben Sie den aktuellen Sortierstatus via &amp;lt;code&amp;gt;ViewBag&amp;lt;/code&amp;gt; oder ein spezielles View-Modell.&lt;br /&gt;
* Erstellen Sie wiederverwendbare Komponenten (wie eine Partial View für Spaltenüberschriften) für Sortierlinks.&lt;br /&gt;
&lt;br /&gt;
=== 🔎 Suche ===&lt;br /&gt;
&lt;br /&gt;
* Implementieren Sie ein Suchformular mit Feldern wie &amp;lt;code&amp;gt;searchBy&amp;lt;/code&amp;gt; (Dropdown) und &amp;lt;code&amp;gt;searchString&amp;lt;/code&amp;gt; (Texteingabe).&lt;br /&gt;
* Übermitteln Sie diese Parameter an die &amp;lt;code&amp;gt;Index&amp;lt;/code&amp;gt;-Aktion.&lt;br /&gt;
* Filtern Sie die Daten auf Service- oder Datenbankebene, um die Performance zu optimieren.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
== 💡 4. Best Practices &amp;amp;amp; Stolperfallen ==&lt;br /&gt;
&lt;br /&gt;
=== ✅ Die “Do’s” ===&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Stark typisierte Views:&amp;#039;&amp;#039;&amp;#039; Bevorzugen Sie diese immer gegenüber &amp;lt;code&amp;gt;ViewBag&amp;lt;/code&amp;gt; für Typsicherheit.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Trennung der Zuständigkeiten (Separation of Concerns):&amp;#039;&amp;#039;&amp;#039; Halten Sie Geschäftslogik in Services, nicht in Controllern oder Views.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Validierung:&amp;#039;&amp;#039;&amp;#039; Verwenden Sie Data Annotations (&amp;lt;code&amp;gt;[Required]&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;[StringLength]&amp;lt;/code&amp;gt;) und prüfen Sie &amp;lt;code&amp;gt;ModelState.IsValid&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Async/Await:&amp;#039;&amp;#039;&amp;#039; Verwenden Sie asynchrone Operationen für alle I/O-Aufgaben (Datenbank- oder API-Aufrufe).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Sicherheit:&amp;#039;&amp;#039;&amp;#039; Validieren und bereinigen Sie Benutzereingaben immer und verwenden Sie DTOs (Data Transfer Objects).&lt;br /&gt;
&lt;br /&gt;
=== ❌ Die “Don’ts” ===&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Komplexe Logik in Views:&amp;#039;&amp;#039;&amp;#039; Vermeiden Sie &amp;lt;code&amp;gt;if/else&amp;lt;/code&amp;gt;-Blöcke oder schwere Berechnungen in &amp;lt;code&amp;gt;.cshtml&amp;lt;/code&amp;gt;-Dateien.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Hardcodierte Strings:&amp;#039;&amp;#039;&amp;#039; Verwenden Sie Konstanten oder Enums für Spaltennamen und Sortieroptionen.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Übermäßige Nutzung von ViewBag:&amp;#039;&amp;#039;&amp;#039; Es fehlt die Prüfung zur Kompilierzeit, was zu instabilem Code führt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
== 🛣️ 5. Routing in ASP.NET Core ==&lt;br /&gt;
&lt;br /&gt;
Routing ordnet URLs den Controller-Aktionen zu.&lt;br /&gt;
&lt;br /&gt;
=== 🏷️ Attribut-Routing ===&lt;br /&gt;
&lt;br /&gt;
Verwenden Sie das &amp;lt;code&amp;gt;[Route]&amp;lt;/code&amp;gt;-Attribut für präzise Kontrolle.&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Controller-Ebene:&amp;#039;&amp;#039;&amp;#039; &amp;lt;code&amp;gt;[Route(&amp;amp;quot;[controller]&amp;amp;quot;)]&amp;lt;/code&amp;gt; fungiert als Präfix.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Aktions-Ebene:&amp;#039;&amp;#039;&amp;#039; &amp;lt;code&amp;gt;[Route(&amp;amp;quot;[action]&amp;amp;quot;)]&amp;lt;/code&amp;gt; definiert den spezifischen Endpunkt.&lt;br /&gt;
&lt;br /&gt;
=== 🎫 Route-Tokens ===&lt;br /&gt;
&lt;br /&gt;
Tokens wie &amp;lt;code&amp;gt;[controller]&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;[action]&amp;lt;/code&amp;gt; ermöglichen die Erstellung dynamischer Routen, die sich automatisch aktualisieren, wenn Sie Ihre Klassen oder Methoden umbenennen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
== 🎓 6. Fokusbereiche für Vorstellungsgespräche ==&lt;br /&gt;
&lt;br /&gt;
Wenn Sie sich auf ein technisches Interview vorbereiten, sollten Sie folgende Themen beherrschen:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;MVC-Architektur:&amp;#039;&amp;#039;&amp;#039; Wie die drei Komponenten interagieren.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Model Binding:&amp;#039;&amp;#039;&amp;#039; Wie Daten von einem Formular zu einem Aktionsparameter gelangen.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Post-Redirect-Get-Pattern:&amp;#039;&amp;#039;&amp;#039; Warum wir nach einem erfolgreichen POST-Request weiterleiten.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Dependency Injection:&amp;#039;&amp;#039;&amp;#039; Wie Services den Controllern bereitgestellt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
== 🏁 Fazit ==&lt;br /&gt;
&lt;br /&gt;
(Schlussabschnitt ggf. ergänzen)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;#039;&amp;#039;Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).&amp;#039;&amp;#039;&lt;/div&gt;</summary>
		<author><name>imported&gt;Import</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Crud_Opertations&amp;diff=3211&amp;oldid=prev</id>
		<title>Thorsten: Die Seite wurde neu angelegt: „Willkommen zu diesem umfassenden Tutorial zur Implementierung von &#039;&#039;&#039;CRUD-Operationen (Create, Read, Update, Delete)&#039;&#039;&#039; in ASP.NET Core MVC. Dieser Leitfaden konzentriert sich auf den Aufbau robuster, wartbarer und effizienter Webanwendungen.  ----  == 🏗️ 1. Controller: Das Herzstück der Anwendung ==  Controller verwalten eingehende HTTP-Anfragen, interagieren mit Services und geben die entsprechenden Views zurück.  === 🔍 Read (Die Index-Aktion)…“</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Crud_Opertations&amp;diff=3211&amp;oldid=prev"/>
		<updated>2026-02-24T22:22:00Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „Willkommen zu diesem umfassenden Tutorial zur Implementierung von &amp;#039;&amp;#039;&amp;#039;CRUD-Operationen (Create, Read, Update, Delete)&amp;#039;&amp;#039;&amp;#039; in ASP.NET Core MVC. Dieser Leitfaden konzentriert sich auf den Aufbau robuster, wartbarer und effizienter Webanwendungen.  ----  == 🏗️ 1. Controller: Das Herzstück der Anwendung ==  Controller verwalten eingehende HTTP-Anfragen, interagieren mit Services und geben die entsprechenden Views zurück.  === 🔍 Read (Die Index-Aktion)…“&lt;/p&gt;
&lt;a href=&quot;https://mediawiki.wissen-ahrensburg.de/index.php?title=Webframeworkk/ASP.NET_Core/Crud_Opertations&amp;amp;diff=3211&amp;amp;oldid=273&quot;&gt;Änderungen zeigen&lt;/a&gt;</summary>
		<author><name>Thorsten</name></author>
	</entry>
</feed>