Moje niezmapowane właściwości w bryzie nie działają z projekcją

Mam następującą jednostkę:

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

Chciałbym wiedzieć, czy moja faktura jest archiwizowana czy zamykana za pomocą flagi (boolean). W tym celu dodałem 2 niezmapowane właściwości w mojej bryzie, jak poniżej:

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; } } 
    ...
}

Teraz mogę wysłać zapytanie do mojego obiektu bryzy w ten sposób:

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

Powyższe wywołanie zwróci wszystkie właściwości mojego podmiotu faktury (w tym zarchiwizowane i zakryte). To dobrze działa.

Ale potrzebuję tylko kilku specyficznych właściwości (dla wydajności). Potem próbuję:

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

Dostałem błąd:Określony element typu „Zarchiwizowany” nie jest obsługiwany w LINQ do elementów. Obsługiwane są tylko inicjalizatory, elementy encji i właściwości nawigacji jednostki.

Bardzo frustrujące. Jakiś pomysł, dlaczego nie mogę wykonać takiego zapytania?

A może ktoś ma inne rozwiązanie?

Wielkie dzięki.

questionAnswers(2)

yourAnswerToTheQuestion