Come si comunica a un contesto dati LINQ di ignorare proprietà specifiche o tutte le proprietà di sola lettura quando si associa un set di risultati a un oggetto?Ignora proprietà della classe di sola lettura quando si utilizza DataContext.ExecuteQuery <T>
Sto lavorando con alcune istruzioni T-SQL che sono difficili da esprimere usando LINQ, quindi sto usando il metodo ExecuteQuery del contesto dati per passare il T-SQL dritto al database.
Se la mia classe T ha proprietà di sola lettura, ottengo eccezioni in fase di esecuzione quando il contesto dati tenta di impostare tali proprietà e ha esito negativo perché non c'è alcuna proprietà setter. Come faccio a dire al contesto di ignorare queste proprietà?
Questo è quello che sto facendo ora. Funziona, ma fa schifo:
public bool IsPaidInFull {
get { return NetTotal <= 0m; }
set { /* needed so linq doesn't choke. Should never be set by hand */ }
}
Posso essere il primo a suggerire - "non _do_ quello"? –
Non fare cosa, esattamente? La soluzione alternativa è un peccato ed è inaccettabile, quindi il mio post qui. Se intendi "non trovare un modo per saltare certe proprietà quando si vincola al set di risultati", potresti spiegare per favore? –