Come ritardare il caricamento di una proprietà con mappatura esterna da linq a sql?
-
20-08-2019 - |
Domanda
Ho una tabella che contiene alcuni campi BLOB che non voglio caricare per impostazione predefinita.
In un file dbml è possibile impostare la proprietà di caricamento ritardato per tali campi.
Esiste un'opzione simile per i file di mapping esterni?
Soluzione
Non ho familiarità con " file di mappatura esterni " ;, ma questo è fondamentalmente il modo in cui si esegue il caricamento lento con LINQ-to-SQL:
private System.Data.Linq.Link<String> _content;
[Column(Name = "content", DbType = "NVarChar(MAX) NOT NULL", Storage = "_content")]
public String Content
{
get { return this._content.Value; }
set { this._content.Value = value; }
}
L'uso di System.Data.Linq.Link<String>
come variabile privata provoca il caricamento ritardato di tale proprietà, a meno che il caricamento ritardato non sia disabilitato su DataContext.
Altri suggerimenti
Credo che dovresti fare qualcosa di simile a quello che Daniel Schaffer ha detto nel codice, ma senza l'attributo [Column], poiché definiresti la mappatura nel file XML.