418 Stimmen

Was ist ein Datenübertragungsobjekt (DTO)?

Was ist ein Datenübertragungsobjekt?

In MVC sind die Modellklassen DTO, und wenn nicht, was sind die Unterschiede und brauchen wir beide?

14voto

Ali.Ghodrat Punkte 2704

Alle Credits gehen an Rick-Andreson

Produktionsanwendungen beschränken in der Regel die Daten, die eingegeben und zurückgegeben werden, auf eine Teilmenge des Modells. Dafür gibt es mehrere Gründe, von denen die Sicherheit einer der wichtigsten ist. Die Teilmenge eines Modells wird normalerweise als Datenübertragungsobjekt ( DTO ), Eingabemodell oder Ansichtsmodell.

Ein DTO kann dazu verwendet werden:

  • Verhindern Sie Überbuchungen.
  • Eigenschaften ausblenden, die Kunden nicht sehen sollen.
  • Weglassen einiger Eigenschaften, um die Größe der Nutzlast zu verringern.
  • Reduzieren Sie Objektgraphen, die verschachtelte Objekte enthalten.
  • Abgeflachte Objektgraphen können für Kunden bequemer sein.

Praktische Umsetzung eines DTO-Ansatzes, durch Rick-Andreson auf Bewährte Tutorials und Praktiken für Microsoft Web APIs mit C# und ASP.Net Core 5:

10voto

Dan Punkte 17173

Bei MVC werden Datenübertragungsobjekte häufig verwendet, um Domänenmodelle auf einfachere Objekte abzubilden, die schließlich in der Ansicht angezeigt werden.

En Wikipedia :

Datenübertragungsobjekt (DTO), früher bekannt als Wertobjekt ein Entwurfsmuster, das zur Übertragung von Daten zwischen Softwareanwendungs Subsystemen. DTOs werden oft in Verbindung mit Datenzugriffsobjekten verwendet Objekten verwendet, um Daten aus einer Datenbank abzurufen.

7voto

MrG Punkte 51

Das Prinzip des Datenübernahmeobjekts besteht darin, neue Datenobjekte zu erstellen, die nur die Eigenschaften enthalten, die für eine bestimmte Datentransaktion benötigt werden.

Die Vorteile umfassen:

Mehr Sicherheit bei der Datenübertragung Reduzieren Sie die Übertragungsgröße, indem Sie alle unnötigen Daten entfernen.

Lesen Sie mehr: https://www.codenerd.co.za/what-is-data-transfer-objects

5voto

Oleg Saidov Punkte 19

Einige Programmierer verwenden DTO, um ihre endgültigen Objektdaten zu unterscheiden, die über eine API weitergegeben werden sollen. Es handelt sich also im Grunde um ein Nutzdatenobjekt für einen Endpunkt. Sie könnten z. B. das Objekt mit den Werten Ihres Kontaktformulars, das Sie an den Server übergeben, als contactFormDto or contactFromPayload dann wissen Sie oder jeder andere Programmierer, dass das, was Sie in diesem Objekt haben, die endgültige Form der Daten ist, die durch das Netzwerk reisen werden.

4voto

sultanmyrza Punkte 2923

Ich würde meinem Kind DTO wie folgt erklären

Mein Sohn, Data Transfer Object (auch bekannt als DTO) **wird verwendet, um Daten zu kapseln, die wir von einem Endpunkt zu einem anderen senden. Verwenden Sie DTO, um Schnittstellen für die Eingabe und Ausgabe für Endpunkte in Ihrem System zu definieren

In diesem Zusammenhang kann man sich ein System als eine Sammlung von Endpunkten vorstellen. Und Endpunkte können alles Mögliche sein (mobile App, Web-App, Backend-API), die miteinander kommunizieren.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X