Dies ist auf meiner Annahme zugrunde, dass ein Objekt vom Typ unter:Hat die Typ-Projektion ein Gegenteil oder ist es immer noch Projektion (oder nur Mapping)?
public class Fruit : IBasicFruit, IFruitDetails
{
// IBasicFruit implementation
public string name { get; set; }
public string color { get; set; }
// IFruitDetails implementation
public string scientific_name { get; set; }
public bool often_mistaken_for_vegetable { get; set; }
public float average_grams { get; set; }
public int century_domesticated { get; set; }
}
... und daraus ein Objekt vom Typ erstellen:
public class BasicFruit : IBasicFruit
{
public string name { get; set; }
public string color { get; set; }
}
... wird als „Projektion“ bekannt oder "Typ Projektion" (diese Projektion gilt nicht nur für anonyme Typen).
Jetzt sagen wir, senden Sie eine serialisierte BasicFruit
von einem Server an meine Client-Anwendung, wo einige hoch entwickelte Farm-Logik auf diese beiden Strings ausgeführt wird, und dann wird es zurück an den Server gesendet, wo das ORM nicht bewusst ist des BasicFruit
Typs, nur des Fruit
Entitätstyps. Wenn ich ein neues Objekt Fruit
basierend auf meinem Objekt BasicFruit
(ignorieren die Eigenschaften, die nicht in BasicFruit
existieren), so dass mein ORM kann bestehen, ist das das Gegenteil der Projektion, weil ich von Teilmenge zu Supersatz, oder gehe wird es immer noch als Projektion betrachtet, oder ist dies nur ein Mapping?
Könnte die Projektion als eine Form des Mappings betrachtet werden?
Große, klar erklärte Antwort! – Jay