Ich implementiere die Vererbung von Tabellen-per-hierarchie (TPH) in meinem Projekt mit dem Entity Framework Core (EF Core). Mein Ziel ist es, alle Felder der Komponentenentität abzufragen und die ererbten Modelle (Textfield, Numberfield usw.) mit ihren spezifischen Eigenschaften abzurufen. < /P>
Hier ist eine vereinfachte Version meiner Modelle: < /p>
public class Component : BaseEntity
{
public Guid Id { get; set; }
public required string Name { get; set; }
public ICollection Fields { get; set; } = [];
}
public abstract class Field
{
public Guid Id { get; set; }
public required string Name { get; set; }
public FieldType Type { get; set; }
public Guid ComponentId { get; set; }
public Component? Component { get; set; }
}
public class TextField : Field
{
public int? MaxLength { get; set; }
public bool IsMultiline { get; set; }
}
public class NumberField : Field
{
public decimal? MinValue { get; set; }
public decimal? MaxValue { get; set; }
}
builder.Entity(builder =>
{
builder.Property(n => n.MinValue).HasColumnName("MinValue");
builder.Property(n => n.MaxValue).HasColumnName("MaxValue");
});
}
< /code>
Problem:
Ich muss alle Felder der Komponentenentität abfragen und die ererbten Modelle (Textfield, Numberfield usw.) mit ihren spezifischen Eigenschaften abrufen. Ich kämpfe jedoch darum, dies effizient zu erreichen. Es unterstützt diesen Anwendungsfall jedoch nicht. , was Probleme verursachte.
Frage:
Wie kann ich alle Felder der Komponentenentität abfragen und die ererbten Modelle mit ihren spezifischen Eigenschaften im EF -Kern abrufen? Gibt es Best Practices oder alternative Ansätze, um dieses Szenario zu bewältigen?
Ich implementiere die Vererbung von Tabellen-per-hierarchie (TPH) in meinem Projekt mit dem Entity Framework Core (EF Core). Mein Ziel ist es, alle Felder der Komponentenentität abzufragen und die ererbten Modelle (Textfield, Numberfield usw.) mit ihren spezifischen Eigenschaften abzurufen. < /P> Hier ist eine vereinfachte Version meiner Modelle: < /p> public class Component : BaseEntity { public Guid Id { get; set; } public required string Name { get; set; } public ICollection Fields { get; set; } = []; }
public abstract class Field { public Guid Id { get; set; } public required string Name { get; set; } public FieldType Type { get; set; } public Guid ComponentId { get; set; } public Component? Component { get; set; } }
public class TextField : Field { public int? MaxLength { get; set; } public bool IsMultiline { get; set; } }
public class NumberField : Field { public decimal? MinValue { get; set; } public decimal? MaxValue { get; set; } }
builder.Entity(builder => { builder.Property(n => n.MinValue).HasColumnName("MinValue"); builder.Property(n => n.MaxValue).HasColumnName("MaxValue"); }); } < /code> Problem: Ich muss alle Felder der Komponentenentität abfragen und die ererbten Modelle (Textfield, Numberfield usw.) mit ihren spezifischen Eigenschaften abrufen. Ich kämpfe jedoch darum, dies effizient zu erreichen. Es unterstützt diesen Anwendungsfall jedoch nicht. , was Probleme verursachte. Frage: Wie kann ich alle Felder der Komponentenentität abfragen und die ererbten Modelle mit ihren spezifischen Eigenschaften im EF -Kern abrufen? Gibt es Best Practices oder alternative Ansätze, um dieses Szenario zu bewältigen?
Ich möchte Datenbanktabellen mit dem Entitäts-Framework-Kern aus PoCO-Klasse erstellen. Wenn ich versuche, ein neues Gerüstelement hinzuzufügen (Option: Rasiermesserseiten unter Verwendung von Entity...
Es ist mögliches MAP -Objekt als Identitätsspalte mit einem Wert generierten Typen von int? Ich habe Fehler
Identitätswertgenerierung nicht für die Eigenschaft 'ID' zum Entitätstyp 'Artikel', da der...
NBLINKSEXPIRATIONSTATUS DEN FÜR NBLINKSEXPIRATIONSTATUS DEN FÜR 12 Sekunden dauert das Ausführen, was nicht schnell genug für das ist, was ich zu erreichen versuche. Könnte es ein Problem () enthält...
Ich arbeite an einem Anwendungsfall, in dem ich mithilfe von Entity Framework Core, die ausschließlich auf Metadaten basieren, dynamisch über mehrere verwandte Tabellen hinweg gelöscht werden muss....
Ich habe meine System-verwaltete Identität und meine Web-API sowie meinen Azure SQL-Server eingerichtet und ich dachte, ich würde Entity Framework Core mit einem Code-First-Ansatz einen Versuch...