Meine unabgebildeten Eigenschaften im Wind scheinen mit einer Projektion nicht zu funktionieren

Ich habe die folgende Entität:

public class Invoice
{
    [Key]
    public int Id { get; set; }
    public DateTime? ArchiveDate { get; set; }
    public DateTime? ClotureDate { get; set; }
    ...
}

Ich möchte wissen, ob meine Rechnung mit einer Art Flag (Boolean) archiviert oder geschlossen wird. Zu diesem Zweck habe ich 2 nicht zugeordnete Eigenschaften wie folgt zu meiner Breeze-Entität hinzugefügt:

public class Invoice
{
    [Key]
    public int Id { get; set; }
    public DateTime? ArchiveDate { get; set; }
    public DateTime? ClotureDate { get; set; }
    [NotMapped]
    public bool Archived { get { return ArchiveDate.HasValue; } } 
    [NotMapped]
    public bool Clotured { get { return ClotureDate.HasValue; } } 
    ...
}

Jetzt kann ich meine Breeze-Entität wie folgt abfragen:

var query = entityQuery.from("Invoices")
                       .where('id', '==', id)
                       .toType('Invoice');

Der obige Aufruf gibt alle Eigenschaften meines Rechnungsstellers zurück (einschließlich archiviert und verschlüsselt). Es läuft gut.

Ich brauche aber nur ein paar bestimmte Eigenschaften (für die Leistung). Dann versuche ich:

var query = entityQuery.from("Invoices")
                       .where('id', '==', id)
                       .select("id, archived, clotured")
                       .toType('Invoice');

Ich habe den Fehler bekommen:Das angegebene Typmitglied 'Archiviert' wird in LINQ to Entities nicht unterstützt. Es werden nur Initialisierer, Entitätsmitglieder und Entitätsnavigationseigenschaften unterstützt.

Sehr frustrierend. Irgendeine Idee, warum ich eine solche Abfrage nicht durchführen kann?

Oder hat vielleicht jemand eine andere Lösung?

Danke vielmals.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage